导出为 GLTF 时,为什么搅拌机操纵的动画会失真?

Kyl*_*Lin 4 blender three.js gltf

我在带有电枢索具的 Blender 中创建了一个动画。当我通过按 Alt-A 在 Blender 中测试它时,它工作得很好。但是,当我.glb使用 KhronosGroup GLTF导出器将其导出为 a 时,生成的动画会失真(例如,四肢断开连接并以奇怪的方式移动)。

为什么会发生这种情况(我该如何解决)?

在过去的两天里,我一直在尝试类似问题的解决方案(例如使用 Ctrl-A 应用位置/旋转/缩放,或删除网格上的骨架修改器),但没有一个对我有用。

链接:

这是动画应该是什么样子的屏幕录制链接(这是我在 Blender 中播放的):https : //github.com/kylejlin/hosting-for-my-stackoverflow-questions/blob/master/正确动画.mov

这是动画实际外观的屏幕录制链接(这是我.glb使用 Three.js 在浏览器中测试导出的内容):https : //github.com/kylejlin/hosting-for-my-stackoverflow-问题/blob/master/distorted-animation.mov

这是.blend文件:https : //github.com/kylejlin/hosting-for-my-stackoverflow-questions/blob/master/soldier.blend

这是导出的.glb文件:https : //github.com/kylejlin/hosting-for-my-stackoverflow-questions/blob/master/soldier.glb

man*_*rax 5

我又看了你的设置。我看到你有一些 IK 骨骼在部分驱动动画。那些不会正确转换,并且必须将 IK 烘焙到动画中。我还研究了镜像修改器并意识到那里的问题..要导出镜像对象,您必须单击“应用修改器”复选框,但这也应用了骨架修改器,它会扭曲网格,因此您得到错误的网格出去。要解决此问题,您必须在搅拌机中手动应用镜像修改器,然后在未选中“应用修改器”的情况下导出。一旦你这样做了,一旦你将 IK 烘焙到动画中,你就可以让它工作。

我过去做过 IK 烘焙,但忘记了它是如何工作的,但这是一个起点:https : //blenderartists.org/t/bake-ik-to-fk/587226

fwiw 这是我预应用镜像修改器时的 .glb .. 注意现在手臂动画正确,但由于 IK,腿/脚仍然扭曲。还没想好怎么烤。。。

https://drive.google.com/open?id=1zeA-mMirOWYZHlzdURqNnykgh_g10kbr