UE_C++ —— UE反射系统

Unreal Engine Reflection System是通过各种宏来封装类,以提供引擎和编辑器功能;当使用UE编程时,可使用标准的C++类、函数和变量;

  • UE中对象的基类是UObject,每个类都定义了一个模板(用于新Actor或对象);
  • 可使用UClass宏来标记从UObject派生的类,以便UObject handling system注意到它们;
  • TSubclassOf是一个提供类型安全的UClass模板类,对赋加类(从特定类型派生的类)非常有用,如可把变量公开给蓝图,设计者可赋加特定武器类(为玩家角色指定生成);
  • 类可包含structs,structs是可帮助组织和操控其相关成员属性的数据结构,可使用**USTRUCT()**宏来单独定义;
  • Unreal Smart Pointer Library是C++11智能指针的自定义实现,旨在减轻内存分配和追踪的负担;包含行业标准的 Shared Pointers、Weak Pointers、Unique Pointers、Shared References(非空共享指针);
  • Interfaces提供可以在多个或不同的类中实现函数和额外的游戏行为;玩家角色可以与世界中的各种Actor互动,每个互动都能引起对一个事件的不同反应;
  • Metadata Specifiers控制classes、interfaces、structs、enums、functions,或properties与引擎和编辑器各方面的交互方式;每一种类型的数据结构或成员都有自己的元数据说明符列表;
  • UFUNCTIONUPROPERTY宏使UE能注意到新的类、函数和变量,这些宏由引擎进行垃圾回收;在指定宏时可,可在UE内编辑和显示它们;
  • Objects
  • Properties
  • Structs
  • TSubclassOf
  • Unreal Interfaces
  • Metadata Specifiers
  • UFunctions
  • Unreal Smart Pointer Library
相关推荐
挨代码1 天前
UEC++ 数据类型及继承关系
c++·ue
挨代码16 天前
UE Mobility
ue
晴夏。19 天前
UE 常见IK算法
ue·ik
晴夏。20 天前
UE 网络同步之 为什么属性复制比RPC更节省性能
ue·网络同步
晴夏。1 个月前
unlua实现原理
游戏·ue5·ue4·lua·ue·unlua
晴夏。1 个月前
c++调用lua的方法
c++·游戏引擎·lua·ue
晴夏。1 个月前
UE Spawn出来的Actor的生命周期和管理方法
游戏·ue5·ue4·ue
晴夏。1 个月前
UE垃圾回收的全方面讲解(通俗易懂)【底层实现、触发方式、引用保持、优化、工具】
ue5·游戏引擎·ue·垃圾回收
晴夏。1 个月前
GAS下的网络同步的全面分析【超级全面】
游戏引擎·ue·gas·网络同步
晴夏。1 个月前
UE5第三人称模板实现及相关引擎源码分析
unity·ue5·游戏引擎·ue