UE4蓝图实现物体的移动与发生碰撞停止
1.设置物体移动的方向
创建变量Direction,在细节面板类型选为Vector,并为其设置一个默认值。这里设置的是延y轴的正方向。
2.设置物体移动速度的大小
创建变量Speed,在细节面板变量类型为浮点型。设置默认值,为速度大小,这里设置的500(UE4中一个像素相当于现实世界的1厘米),相当于5m/s。
3.设置物体下一帧的位置
3.1.获取物体当前位置
右键搜索并创建“GetWorldTransform(Static Mesh Component)”节点,再将节点Break Transform,获取到物体的位置,旋转和缩放数据,只改变位置,其它两项保持不变。
3.2.获取当前帧的位移,将速度乘以每一帧的时间,再乘以方向,得到当前帧的位移。
3.3.当前帧的位移加上当前帧的位置,作为下一帧的位置。每一帧调用SetActorTransform函数,设置下一帧的位置。
注意:如果想触发HIt事件,一定要将Sweep勾选上。
4.发生碰撞时将物体停下
在触发Hit事件时,将速度设置为0.
注意:想让物体移动,一定要将物体设置为可移动。