美文网首页虚幻4
虚幻4入门 第三人称状态下的自由视角(RelativeRotat

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

作者: 92c5d7b45a71 | 来源:发表于2018-06-05 10:37 被阅读63次

    本篇文章是使用Timeline(时间轴)实现视角的线性回弹效果。使用RelativeRotation(相对旋转)实现的视角控制。
    Demo下载

    完整蓝图节点预览

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

    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

    相关文章

      网友评论

        本文标题:虚幻4入门 第三人称状态下的自由视角(RelativeRotat

        本文链接:https://www.haomeiwen.com/subject/ldtpsftx.html