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

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

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

0. 效果演示

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

1. 传统实现方法

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

在这里插入图片描述

2. Control Rig实现方法

2.1 原理

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

在这里插入图片描述

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

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

在这里插入图片描述

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

在这里插入图片描述

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

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

在这里插入图片描述

2.2 Control Rig绑定

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

在这里插入图片描述

测试连接

测试连接

在这里插入图片描述

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

在这里插入图片描述

2.3 动画蓝图

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

在这里插入图片描述

2.4 范围限制

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

在这里插入图片描述
范围限制的方式很多而且要结合具体项目需求实现,范例项目中使用的方式比较偷懒也简单粗暴(仅供参考):使用了一个射线检测目标区域是否在角色前方

在这里插入图片描述绿色区域(Trigger Box)为目标范围。

在这里插入图片描述

3. 小结

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

参考

UE4Tuts For You的油管教程。

  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开发游戏的老王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值