1、类
从大部分Gameplay类可以派生出4中主要类型的类。分别是
- UObject
- AActor
- UActorComponent
- UStruct
当然也可以创建不继承任何父类的类,但它们不会参与到引擎内部的构建中。
UObject
虚幻引擎中的基本构建块叫做UObject,该类结合UClass使用,可以提供引擎中的多个最重要的基本服务:
- 反射属性和函数
- 序列化属性
- 垃圾回收
- 按名称查找UObject
- 属性的可配置值
- 属性和函数的联网支持
从UObject派生的每个类都会创建有一个UClass,UClass包含有关该类实例的所有元数据。UObject和UClass一起位于Gameplay对象在其生命周期所有作用的最根部位置。UClass描述的是UObject实例的样子、可序列化和联网的属性等。但是大多数Gameplay开发不会直接从UObject派生,而是从AActor和UActorComponent派生。
AActor
AActor派生自UObject,它由关卡设计师放在关卡中,或者通过Gameplay系统在运行时创建。可以放入关卡中的所有对象都是派生自AActor。AActor可以通过调用代码(C++或蓝图)销毁,或者在所属关卡从内存中卸载时通过标准的垃圾回收机制销毁。
AActor可以通过派生子类实现特殊化,也可以通过复合(充当UActorCOmponent的层级容器