[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)

本教程采用图文教程+视频教程的多元化形式,我会为不同的知识点选择适当的表达方式。教程内容将同步免费发布于开发游戏的老王(知乎|CSDN)的专栏《玩转UE4/UE5动画系统》。教程中使用的资源及工程将以开源项目的形式更新到GitHub:玩转UE4上。

在这里插入图片描述
工程文件: 玩转UE4(GitHub)
在这里插入图片描述

0. 效果演示

演示视频:用ControlRig实现目标偏移(Aim Offset)

文章目录

    • 0. 效果演示
    • 1. 传统实现方法
    • 2. Control Rig实现方法
      • 2.1 原理
      • 2.2 Control Rig绑定
      • 2.3 动画蓝图
      • 2.4 范围限制
    • 3. 小结
    • 参考

1. 传统实现方法

传统的目标偏移主要是基于混合空间或目标偏移空间实现的,缺点就是需要准备相应的动画资源,还有就是目标偏移的方向角度以及幅度局限性都比较大,控制起来也不太直观。

2. Control Rig实现方法

2.1 原理

使用Control Rig实现,仅需要一个基础的Pose资源就可以了

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第1张图片

本文是以射击动画为例,如果是其它动画可以参考原理使用合适的骨骼

射击动画的目标偏移主要是在脊椎上三根骨骼(spine_01,spine_02,spine_03)的扭转作用下产生的。

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第2张图片

注意:为了让整个肢体平滑过渡,这三根骨骼扭转的幅度由下到上依次增大。

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第3张图片

使用Control Rig中的Aim节点让骨头朝向目标位置(目标位置所在空间为骨骼空间即root空间)

关键参数是扭转的第一轴向(Primary Axis)和第二轴向(Secondary Axis)以及目标类型Kind

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第4张图片

2.2 Control Rig绑定

可以先添加一个AimCtrl控制器,并按照下面的测试连接实验一下绑定效果

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第5张图片

测试连接

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第6张图片

测试完绑定效果,可以把AimCtrl替换成实际实际位置,这里的AimLocation就是目标在世界空间的位置坐标,传递进入Control Rig以后首先要使用From World节点将它转换到骨骼空间。

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第7张图片

2.3 动画蓝图

在动画蓝图或者角色蓝图中获取目标位置传递给Control Rig就可以了

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第8张图片

2.4 范围限制

使用Control Rig实现目标偏移需要注意目标范围的限制以防止骨骼出现不合理的扭曲

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第9张图片
范围限制的方式很多而且要结合具体项目需求实现,范例项目中使用的方式比较偷懒也简单粗暴(仅供参考):使用了一个射线检测目标区域是否在角色前方

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第10张图片绿色区域(Trigger Box)为目标范围。

[玩转UE4/UE5动画系统>Control Rig篇] 之 使用Control Rig实现目标偏移(Aim Offset)(附项目代码)_第11张图片

3. 小结

最近老王在挖掘Control Rig,逐渐感觉有了Control Rig以前一些零散的“传统手艺”都有了更加灵活简单且统一的实现方案,这对虚幻引擎的初学者也算是一个大大的福音了。

参考

UE4Tuts For You的油管教程。

你可能感兴趣的