状态使用枚举类型来保存
创建枚举类型:
虚幻C++枚举类型开头要加E,使用C++申请语法后接存储类型(uint8)
枚举要参加反射系统,需要在前加上宏:UENUM(BlueprintType)
值命名规范:使用类名缩写作为前缀
值要参与反射系统,须在后加上宏:UMETA(DisplayName="")
状态使用枚举类型来保存
创建枚举类型:
虚幻C++枚举类型开头要加E,使用C++申请语法后接存储类型(uint8)
枚举要参加反射系统,需要在前加上宏:UENUM(BlueprintType)
值命名规范:使用类名缩写作为前缀
值要参与反射系统,须在后加上宏:UMETA(DisplayName="")
实现一个功能前的流程
1、说清楚需求(画图描述或文字)
2、实现它的一个基本原理
3、开始实现
与设计师协作时,蓝图可以为BlueprintReadOnly
自行制作时,蓝图可为BlueprintReadWrite
要写注释
做好规划,再进行下一步行动
使用BlueprintImplementableEvent关键字搭配UE蓝图系统使用
父类函数若要在子类函数中重写时,则需要添加virtual
构造函数放在变量处的public中
另一个public中放置函数
带有反射系统的成员不能放在private中
多进行安全性的判断
组件不要分类
在开始开发前,先进行底层设计,进行规划,后期增删改查会方便许多
子UI完成自己的逻辑
UI获得蓝图引用一般获取C++版本的父类
复杂的逻辑使用C++
使用原生C++类操控UI
临时存放的变量理应不应该被修改
对于引用,需要判断其有效性,保证代码的健壮性
临时变量可以提高代码可读性
推荐将绑定写在beginplay中,设置(蓝图面板中的参数)写在构造中
放在AddDynamic(等紫色的宏(参与反射系统))的函数都要有UFUNCTION
AddOffset中的Sweep属性仅对根组件生效
设置资源需要将其加载至c++
Hit事件无法与Overlap事件共存
HIt需要调整碰撞为阻挡
Overlap需要调整碰撞为重叠
命令台调试
数据类型:
简单型,int 字符型 float 指针类型 枚举,void
结构型 数组 字符串 记录 文件 自定义数据类型 及各种容器
整形:int char true/false
长短修饰符 short/int/long
符号修饰符 signed/unsigned
传递有效信息
1,扬长避短
2,
02:37 创建组件
18:49 建立蓝图接口
节点
多个节点进行合并
选中多个节点右击