您当前的位置: 首页 >  ue4

开发游戏的老王

暂无认证

  • 1浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

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

开发游戏的老王 发布时间:2021-10-10 19:33:55 ,浏览量:1

本教程采用图文教程+视频教程的多元化形式,我会为不同的知识点选择适当的表达方式。教程内容将同步免费发布于开发游戏的老王(知乎|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资源就可以了

在这里插入图片描述

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

射击动画的目标偏移主要是在脊椎上三根骨骼(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的油管教程。

关注
打赏
1656935939
查看更多评论
立即登录/注册

微信扫码登录

0.0385s