UE4学习日记(九)脚部IK动画

    科技2024-05-26  97

    这次实现的功能是人物的脚部IK动画。

    首先进入角色蓝图,声明需要用到的参数。

    初始化两个参数IKScale和IKDistance。IKScale是预防角色变小之后,出现定位偏差。 然后是IKFootTrace函数, 进入角色动画骨骼中,添加插槽Toe_l和Toe_r,注意这个Toe需要设定在【脚底】的位置,这样更加方便后面站在斜面时的旋转,更好的贴合地面,如在脚掌的话,可能出现悬空或者陷入地面的问题。 进入角色蓝图,设置IKInterSpeed为20,设置LeftFootSocket为Toe_l,设置RightFootSocket为Toe_r。 开始编写脚部IK动画处理事件。 先限定进行脚部IK的情况,只有角色在静止时才进行脚部IK的计算,防止角色鬼畜。 计算脚部IK。 调整角色胶囊体高度。 进入角色动画蓝图,声明以下变量。

    在【事件蓝图更新动画】中更新参数变化。 AnimGraph中修改如下,双骨骼IK可以Joint Target Location 可以跟我一样: 注:root骨骼的变换如下:

    双骨骼IK中左边的设置 右边的改为后缀r的即可。 然后是脚面的角度变化。 注:左脚变换参数设置如下: 最后别忘了在Tick中调用FootIK事件。

    最终效果图: 还有点bug,脚的角度会改变,但会陷入地面。

    Processed: 0.010, SQL: 8