Choose your operating system:
Windows
macOS
Linux
本页面的内容虚幻C++太棒了!
C++与蓝图
类向导
让属性出现在编辑器中
在我的构造函数中设置默认值
热重载
通过蓝图扩展C++类
在C++和蓝图边界中调用函数
深入探索
Gameplay类:对象、Actor和组件
虚幻对象(UObject)
AActor
运行时生命周期
UActorComponent
分解第一人称角色
UStruct
继续深入探索
虚幻反射系统
对象/Actor迭代器
内存管理和垃圾回收
UObject和垃圾回收
Actor和垃圾回收
UStructs
非对象引用
类命名前缀
数字类型
字符串
FString
FText
FName
TCHAR
容器
TArray
TMap
TSet
容器迭代器
For-each循环
将您自己的类型与TSet/TMap(散列函数)一起使用
虚幻C++太棒了!本指南主要介绍如何在虚幻引擎4(UE4)中编写C++代码。不必担心,虚幻引擎中的C++编程十分有趣,入门也很简单!我们通常会认为虚幻C++是"辅助C++",因为我们有很多功能可以让所有人都能更简单的使用C++。
在开始之前,您必须已经对C++或另一种编程语言有所认知。在编写本页内容时,我们假设您已经有了一些C++经验,但如果您了解C#、Java或JavaScrip,也会发现有许多相似之处。
如果您完全没有编程经验,我们也考虑到了这一种情况!请查看我们的 蓝图视觉脚本指南 ,您就有了基本认知并可以继续学习了。您可以使用蓝图脚本创建整个游戏!
在UE4中,您可以编写标准C++代码,但阅读本指南并学习有关虚幻编程模型的基本知识后,您会取得更大的成功。接下来我们将详细介绍。
C++与蓝图UE4提供了两种创建新Gameplay元素的方法:C++和蓝图视觉脚本。程序员利用C++即可添加基础Gameplay系统,然后设计师可基于这些系统进行构建或利用这些系统为某个特定关卡或游戏本身创建自定义Gameplay。在这些情况下,C++程序员在文本编辑器(如Notepad++)或IDE(通常是Microsoft Visual Studio或Apple Xcode)中工作,设计师则在UE4的蓝图编辑器中工作。
Gameplay API和框架类在这两个系统中都可以使用,可以单独使用,但组合使用,互补长短才能发挥出它们真正的作用。那么到底有何意义呢?这意味着,当程序员使用C++来创建Gameplay构建块,设计师利用这些块创建有趣的Gameplay时,引擎就能发挥最大作用。
言至于此,我们来看看C++程序员为设计师创建构建块的典型工作流程。在此情况下,我们将创建一个类,稍后设计师或程序员可以通过蓝图扩展此类。在该类中,我们将创建一些设计师可以设置的属性,并且我们将根据这些属性派生新值。整个过程使用我们提供的工具和C++宏就可以完成,非常简单。
类向导首先,使用编辑器中的类向导来生成稍后将通过蓝图扩展的基本C++类。下图显示了向导的第一步,即创建新Actor。
该流程中的第二步是告诉向导,您已经生成的类的名称。这是使用默认名称的第二步。
选择创建类后,向导会生成文件,并打开您的开发环境,便于您开始编辑。下面是为您生成的类定义。有关类向导的