问题背景
项目背景
我用到的动作资源是一个双手剑的动画集合,用到的是小白人标准骨骼(其实不标准,原作者添加了weapon骨骼即双手剑的系列骨骼,但是没什么影响),而我想要重定向的目标来自虚幻商城中的免费资源“虚幻争霸:锐斯”的改动版(①我将锐斯的模型导入Blender进行了修改,具体是分离了锐斯自带的枪,删除了枪的骨骼,再重新导回UE4;②我在插槽weapon_r上插入了大剑的预览网格体)。二者的骨骼如下:
至于为什么小白人手上没有大剑,因为这个资源包里实现挥剑动画的逻辑不同,简单介绍一下:
- 原本的大剑角色是这样的逻辑:角色骨骼是不带武器的,然而骨骼网格体是带武器的(需清楚的是,骨骼网格体使用的骨骼是上述小白人的骨骼,但是模型做了修改,增加了大剑并把大剑绑在weapon骨骼上;不知道怎么做到的,应该是用建模软件在外面更改了模型)。资源包里的动画序列是没有武器的动作,但是如果在动画序列预览里面点开骨骼显示会发现其实作者是做了大剑骨骼的运动的。因此在角色蓝图里尽管用到的动画蒙太奇是不带武器的,但只要Mesh的骨骼网格体选择好骨骼网格体,在场景中的角色依然可以正常显示挥剑动画。
- 而我的主角是这样的逻辑:主角骨骼里添加插槽,然后打开角色蓝图,在胶囊体组件里添加大剑的静态网格体 GreatSword ,然后在 Construction Script 里面进行组件附加,如下图所示:
问题描述
直接将资源包里的动画序列重定向后,进行播放,发现原本带位移的动画位移消失了,不再有红线的移动,如下(注意,动画都未启用根运动,关于根运动可以参考官方文档 根运动 | 虚幻引擎文档 ,里面开头几段便介绍了下图中的“红线”是什么):
支楞的骨骼不要介意,没用上,不影响。
问题解决
找到原因
其实原因很简单(虽然我在这里卡了四个小时)。一开始就觉得是重定向的问题,后来实在不知道为什么root骨骼没有跟着被重定向,转而去更改动画序列,忙了半天最后发现是骨骼上的问题。原因是在重定向前,不是要对两个骨骼都进行选择绑定吗?我习惯性地选完人形绑定 Humanoid 后直接就重定向去了,问题就出在这里。首先我的两个骨骼最上层是不一样的:
不难发现我的主角最上层(也就是根部)是Wraith,下面才是root,而小白人最上层就是root。文章来源:https://www.toymoban.com/news/detail-437542.html
解决方法
更改主角骨骼的 Humanoid 里的映射即可,我将节点Root的骨骼更改为了Wraith后,再重定向,得到的动画就正常了:
就这个小问题困扰了我一晚上 😦。文章来源地址https://www.toymoban.com/news/detail-437542.html
到了这里,关于UE4学习笔记——解决动画重定向后整体位移消失问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!