这是一个很抽象但又难发现的问题,先说结论,pmx文件命名不能用“文件命_xxx.pmx”的方式命名,即后缀的“_xxx”中的下划线不能用,blender会识别不到的,导致实际骨骼与导出骨骼的名字不同,所以才会缺失骨骼轨迹。
具体问题解决思路:
问题来源:
首先我对我的pmx文件进行了带下划线后缀的命名。
然后用mmdtools插件导入pmx到blender中(导入完记得点插件模型设定的材质中的“转换为blender”,不然导出fbx会材质丢失)
导入后,在这里,已经可以看见blender导入后的命名缺失了下划线了,变成了空格符号了
随便制作一个动画后,导出fbx(不做示范了),并且导入到ue4,就会发现报错了。
再来看看ue4中导入的骨骼命名,会发现ue4会把空格符号的位置,自动改成中划线“-”。而模型的根骨骼正确命名应该为“塞雷娅22_1”(当然这个实际本应不是根骨骼,这个是mmd的空物体坐标轴,因为作为模型的父级导出,就被ue4转换成了根骨骼,实际的根骨骼是下面的“塞雷娅22_1_arm”。如果不想要这个骨骼,就把mmd的空物体坐标轴在导出前删除。我的根骨骼不叫root,是因为我是从vroid中导出的骨骼模型,有它自己的命名规范)