UPROPERTY 学习笔记
目前笔者刚开始接触ue4,对于UPERPERTY处于接触一点记录一点的状态。
可能还不完整,仅是个人对该知识点的一点总结
UPROPERTY宏可以支持多种参数,下面从使用的角度分析下
当我们在C++代码中希望有些属性显示在ue4编辑器的属性界面,可以这样写:
UPROPERTY(EditAnywhere)
float num;
或者这样:
UPROPERTY(EditAnywhere,Category="xxxx")
float num;
关于Category,我的个人理解是在ue4属性界面中,自定的标签显示,如果对属性有分组要求,可以考虑使用,如果只是一些简单的属性,可以忽略掉
关于EditAnywhere:表示此属性可以通过属性窗口,原型和实例进行编辑(原型指的是类模板,实例指的是具体的对象实例)
当我们在C++代码中有些属性显示在蓝图编辑器中获得关联,可以这样写:
//定义一个委托事件类型
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FDoorEvent);
//....
//定义一个该事件的变量,该对象的具体业务逻辑可以在蓝图中被编辑
UPROPERTY(BlueprintAssignable)
FDoorEvent OnOpen;
//该变量的调用
//OnOpen.Broadcast();
这样我们定义一个事件,该事件可以在蓝图编辑界面中,通过右键点击该类,添加一个"OnOpen"的函数,该函数的执行是在蓝图中进行编辑的,而调用可以通过c++代码来完成,及:“OnOpen.Broadcast();”
未完待续…