您的位置:首页 > 产品设计 > UI/UE

UE4基础:Gameplay框架(二)UObject类(5月28日 更新)

2020-06-02 04:15 477 查看

参考《Objects》

文章目录

概要

UObject
是UE4反射系统得核心基类,它实现了下列机制:

  • 垃圾回收(GC:Garbage collection)
  • 反射(Reflection)
  • 运行时类型信息可用(Type information available at runtime )
  • 序列化(Serialization)
  • 自动编辑器整合(Automatic editor integration)
  • 网络复制(Network replication)
  • 自动属性初始化(Automatic property initialization)
  • 引用更新(Reference updating)
  • 默认属性变化自动更新(Automatic updating of default property changes)

常用接口

运行时创建UObject

  • 需要使用
    NewObject<class>()
    创建,它是一个全局泛型函数
UMyObject* MyUObj = NewObject<UMyObject>();
  • 虽然
    AActor
    UActorComponent
    也是
    UObject
    的派生类,但是UML类图上
    UObject
    以下的这两个分支都不使用
    NewObject<class>()
    创建

获取所属UWorld

virtual class UWorld* GetWorld() const;

获取元信息

注意:

GetClass()
方法其实不是在
UObject
中定义,而是在其基类
UObjectBase
定义的

FORCEINLINE UClass* GetClass() const

获取Name

注意:

GetName()
方法其实也不是在
UObject
中定义,而是在其基类
UObjectBaseUtility
定义的

FORCEINLINE FString GetName() const
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: