关卡蓝图 | 普通蓝图 |
定位:针对整个关卡 | 针对某个对象 |
可以直接操作关卡中的actor对象 | 不能直接操作别的对象 |
可以获得关卡蓝图的引用 | actor不能直接获取关卡蓝图引用 |
构造脚本
构造脚本 vs 构造函数
构造脚本:执行初始化逻辑
构造函数:C++里,用来初始化成员变量
1.新建一个actor
设置一个构造函数,使得拖动actor时,模型出现在(-100~100)随机位置
设置一个数组,遍历出10个元素,使得每次都保持10个模型,出现在(-100~100)随机位置
步骤1 把添加的模型保存到数组中
步骤2 更改变量类型为数组类型
步骤3 将此变量暴露出来,使得可以方便更改值
步骤4 每一次遍历后都刷新clear一下数组,使得数组数量保持在0-9十个元素
设置新模型栏,更改任意模型
小练习:当前的偶数元素,材质可以在实例的细节面板中实时更改
总结:蓝图规范(读写顺序)
一、读(先用白线看大概 的逻辑)
1.组件
2.构造脚本
3.事件图表
4.函数与变量
二、写
1.组件
2.构造脚本
3.事件图表
4.函数与变量
在书写的时候,先写函数,白色逻辑线最后写。
案例:昨天小球的案例增加一些交互功能
字体
离线字体的创建(非实时,但省性能)
点击新建的font
更改字体材质
一些相关系数
同样的,把显示时间的文本、游戏时间也做一份
计时功能
蓝图 使得数字和时间关联
做“吃金币” 计算得分
导入金币模型(更改材质)
选中金币建立蓝图
因为显示模型没有碰撞体,这里自己建立一个金币的碰撞体
金币蓝图类设置金币的动画(记得改为在类里面改为可移动)
1.碰撞体
2.启用碰撞
3.发生重叠的双方都要勾选“生成重叠事件”
3.其中一方的是“允许重叠”
4.写重叠事件函数(碰到之后消失并得分)在pawn的蓝图里写
得分的text关联
1.先创建一个对象的变量
2.暴露到关卡中(吸管吸对象)
3.蓝图
设置球体做不同材质的交互
下层水面设置为all block
到达终点时计算器停止计时
gate节点
用gate节点停止tick
小球在半空中时候禁止跳跃
hit事件的判定:
1.有碰撞盒
(已启用碰撞)
2.勾选生成命中事件
3.碰撞设置,双方都设置为block
成立了写函数
更优的做法:
快捷键:双击拉面线条