虚幻引擎图文笔记:动画资源中Force Root Lock的作用

1

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2022-11-27 17:59:16 | 显示全部楼层
前言

今天有小伙伴问我虚幻引擎中动画资源Root Motion选项中的Force Root Lock的作用是什么,老王对这个选项的功能理解也是比较含糊的,查阅了官方文档,其描述也比较费解。索性通过实验的方式理解一下它的作用吧。
该选项的位置





在这里插入图片描述

官方文档中的解释





在这里插入图片描述

实验准备

项目设置和资源准备


  • 项目:第三人称横板项目
  • 动画资源:Polygonmaker资源包,该套资源具有带根运动的动画
默认动画蓝图设置

将地面运动的混合空间替换为具有跟运动的动画资源"Anim_Regular_climb_up"



在这里插入图片描述

为了让跟运动在蓝图中生效,将Root Motion Mode设置为Root Motion from Everything



在这里插入图片描述

角色蓝图设置

将Character Movement组件中 Default Land Movement Mode设置为Flying,这样可以屏蔽掉重力的干扰



在这里插入图片描述

并且我在角色的根骨骼上添加了一个红色的方块,以便于观察根骨骼的变化



在这里插入图片描述

实验

1. 不开启Root Motion和Force Root Lock





在这里插入图片描述



https://www.zhihu.com/video/1572284587845365760

根骨骼移动,但不会影响胶囊体的位置,此时Skeletal Mesh会“逃出”胶囊体范围




在这里插入图片描述

2. 仅开启Root Motion





在这里插入图片描述



https://www.zhihu.com/video/1572284700177133568

根骨骼移动,并且会反向影响胶囊体的位置(顺便可以看到跟运动会受物理碰撞影响)
3. 仅开启Force Root Lock





在这里插入图片描述



https://www.zhihu.com/video/1572284850609807360

根骨骼的移动被清零,自然也不会影响胶囊体位置
4. 同时开启Root Motion和Force Root Lock





在这里插入图片描述



https://www.zhihu.com/video/1572284956558147584

和仅开启Root Motion效果相同,说明Force Root Lock仅在Root Motion未开启时才会产生作用
应用场景

关于这个选项的应用场景,我找到了国外社区中一个网友提出的问题,有些时候我们并不想使用根运动,但是由于动画资源中的根骨骼有位移数据(即本身是RootMotion动画资源),在游戏中这个根骨骼位移数据虽然不能影响胶囊体的移动,但是会使角色“逃出”胶囊体范围,这时开启“Force Root Lock”可以强制将根骨骼位移数清零,并将角色限制在胶囊体范围之内。



在这里插入图片描述

小结

以上是通过实验得出的结论,由于没有深入研究过源代码,有理解不当之处敬请指正。
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 立即注册
快速回复 返回顶部 返回列表