您的当前位置:首页虚幻4入门 第三人称状态下的自由视角(RelativeRotat

虚幻4入门 第三人称状态下的自由视角(RelativeRotat

2024-12-13 来源:哗拓教育

完整蓝图节点预览

同样,先来看一下完整的蓝图,只需要创建一个变量。

Character

说明

先讲解视角的输入控制

LookUp
LookUp

这么多步骤仅仅是限制Pitch轴的最大角度,获取当前SpringArm的相对旋转Pitch轴,先把值给加上输入的驱动值,再判断是否超出设定的最大最小值。注意顺序是先给加上再判断。

Turn
Turn

这里角色的旋转依旧是用的ControllerRotation,我们做的就是判断IsFreeSee(Alt是否被按下,自由视角)如果被按下,我们则将Turn的驱动值(鼠标X轴)传递给ApringArm设置它的相对旋转。

LeftAlt
LeftAlt

在被按下时把IsFreeSee设为真(Turn将驱动SpringArm的相对旋转),并将时间轴Stop(停止更新),不然的话有可能在Alt被按下的时候时间轴继续更新直至更新结束(时间走完了)调用Finished把IsFreeSee设为假,这样Turn的将驱动的是AddControllerYawInput(此时Alt依旧被按下,尚未释放)。


SeeTimeline

双击节点打开时间轴,长度设为0.3s,添加一个浮点型轨道,第一个点时间为0s,值为1,第二个点时间为0.3s,值为0。
Update节点会持续调用直至结束,并且更新设置的轨道值,我们把这个值乘以SpringArm的当前相对旋转,并设置为新的相对旋转。你可以理解为在第0秒的时候值为100%,这个百分数一直在减少,在最后此更新时(0.3s)值为0%。

-----

在这里附上一张以Tick+Interp实现的视角线性回弹效果,也只需要2个bool变量


Tick+RInterpTo

End

显示全文