【蓝图】p40-p43对象引用、变量有效性、实现键盘控制物体自转、简单点名系统

p40-p43对象引用、变量有效性、实现键盘控制物体自转、简单点名系统

p40对象引用、变量有效性

当在一个节点上需要连的线太多,或者需要连接到另一个图标中时,可以创建一个变量,把引脚传到变量里面,则此变量代替了节点的蓝图

操作方法1:新建一个变量,在变量类型里选择想要代替的蓝图

操作方法2:拉出蓝图引脚,选择提升为变量

注意:操作方法12创建出的变量都还没有赋值,只是代表原蓝图的一个概念,使用前要判断此变量是否是有效的

p41实现键盘控制物体自转

创建Actor蓝图类,添加一个立方体,在图表拉出立方体,拉出引脚搜索AddLocalRotation(添加本地自转)

调整Delta Rotation即可调整选转角度(每1是1°)

直接连接只会旋转一次(如2只会旋转2°就会停下),本次目标为自转,所以需要有一个循环(就会旋转2°,旋转2°...),添加事件Tick会达成自转效果,每一帧旋转

创建bool值控制旋转

如同连接,注意bool是否可以旋转不要勾选,因为目的是按键才能旋转,所以初始不能旋转

实现通过键盘控制自转

创建自定义事件(控制是否可以旋转bool值什么时候是对什么时候为错)

创建分支节点和两个"set是否可以旋转"如下图

也可以用flip flop

flip flop和分支的区别是flip flop只能第一次执行A第二次执行B,循环往复有局限性,分支可以第一次执行A第二也次执行A,而且还可以改变初始的bool值对错,可拓展性强

打开玩家角色蓝图ThirdPersonCharacter,创建新图表"控制物体自转",创建变量"自我旋转",设置变量类型为"物体自转_BP"

如同搜索蓝图连接

?Is Valid蓝图在变量是有效时走Is Valid,无效时走Is Not Valid

编译保存会发现没反应,因为还没给引用的"自转物体"赋值

点亮眼睛,在视口选中玩家角色,会在细节面板找到默认-》自我选择

选择键盘控制物体自转即可

或者点击吸管形状物体,在视口点击要进行控制自转的物体就会自动识别

p42p43简单点名系统

p41中的物体数量多时,想让其同时自转,需要的连接太多了,需要简单点名系统

Get All Actors Of Class(获得场景中所有该类的actor演员)

使用前先在Actor Class选择完类在拉出引线

用Get All Actors Of Class(获得场景中所有该类的actor演员),从Out Actors拉出引脚搜索"数组get",复制"事件控制旋转",如此可以实现按键随机在所有同类型物体里随机一个自转

用Get All Actors Of Class(获得场景中所有该类的actor演员),从Out Actors拉出引脚搜索For Each Loop(对于每个循环),复制"事件控制旋转",如此可以实现按键,使所有同类型物体自转

get

获取场景中某一个该类的演员

想要执行第n个就在2的位置写n-1的数

For Each Loop

循环遍历场景中的所有该类的演员(和场景中的所有该类的演员都通信一次)

completed:完成之后执行此节点

Array Index:当前循环的是第几个就传出个几(第二个传出个2)

相关推荐
致命的邂逅15 天前
UE4游戏查找本地角色数据的方法-SDK
游戏·ue4
北冥没有鱼啊17 天前
UE 材质几个输出向量节点
ue5·游戏引擎·ue4·虚幻·材质
北冥没有鱼啊1 个月前
UE 材质 条纹循环发光
游戏·ue5·游戏引擎·ue4·材质
北冥没有鱼啊1 个月前
UE 滚动提示条材质制作
游戏·ue5·游戏引擎·ue4·虚幻·材质
北冥没有鱼啊2 个月前
UE 使用事件分发器设计程序
游戏·ue5·ue4·游戏开发·虚幻
GR902 个月前
UE4 踩坑记录
ue4
程序猿熊跃晖2 个月前
解决 Unreal Engine 5.2 中服务器目标构建问题:从源码编译到项目配置优化
ue4
Ⅰㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ2 个月前
开篇 - Unlua+VsCode的智能提示、调试
vscode·ue4·智能提示·unlua
吴梓穆2 个月前
UE5学习笔记 FPS游戏制作33 换子弹 动画事件
笔记·学习·ue4
吴梓穆2 个月前
UE5学习笔记 FPS游戏制作31 显示计分板
笔记·学习·ue4