码迷,mamicode.com
首页 > 其他好文 > 详细

UE4蓝图 实现时间倒流功能

时间:2019-08-27 19:02:40      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:pen   保险   png   ue4   细节   alt   碰撞   获取   检测   

 

,       时间倒流的实现大概思路就是在一个特定的时候每帧记录这个物体的Transform并存入数组中,再触发一个时间从数组最后一个往前设置Transform。

第一步首先我创建一个Actor类,并添加组件Cube(一个模型并把它设为根组件)和一个Box Collision(检测碰撞用的),技术图片         Cube的碰撞设置为BlackAll,碰撞体默认碰撞就行。

第二步在EventBeginPlay后面让Cube开启物理技术图片或者直接在细节里物理勾上也可以。

第三步在EventTick后面,首先判断是否开启记录位置IsOpen?技术图片  ,如果为真就开启物理(保险一点,有时会有些Bug),之后创建一个Transform类型的数组,

获取Cube的世界Transform存入数组技术图片,延迟5秒把数组长度存到一个整型变量当中,并把bool值变量设为假。技术图片

 

第四步如果IsOpen为假就Delay0.0002秒后判断这个数组长度的变量Length是否为0技术图片,如果为真就把数组清空并把物理关闭。技术图片我这个Return是一个开关 ,按键后它才会实现时间倒流。

第五步如果Return为真就把物理关闭(时间倒退过程开启物理会影响效果),之后获取数组长度的变量Length-1设置给Length(这样就会从最后一个来读取数值了)技术图片最后设置这个Cube的Transform,获取TransForm数组然后Get

,Get的值是减1以后的Length技术图片

这样就基本实现了功能,触发只需要把IsOpen变量给设为真,我是用第一人称模板的子弹来触发的   然后设置个按键就可以出现效果了。技术图片

 

 

 技术图片

最后说一句,这是我第一次分享自己的笔记,可能很乱,大家将就看,有啥不理解问我。

 

UE4蓝图 实现时间倒流功能

标签:pen   保险   png   ue4   细节   alt   碰撞   获取   检测   

原文地址:https://www.cnblogs.com/maoxuyong/p/11419927.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!