当导出到Three JS时,Blender模型和动画会变形

4
我正在尝试导出在Blender中制作的模型,以便在Three.JS项目中使用。我尝试使用Blender 2.8 GLTF导出器和Blender 2.79 GLTF Blender IO导出器,具体取决于我在导出时选择的设置,两者都会产生类似的结果。
当我选择“Skinning”作为导出选项时,我的动画(Gallop)被应用,但我的模型变形了(见图片)。
在Blender中,我使用了一个由骨骼组成的简单骨架,并在20帧上进行动画。没有什么疯狂的事情,但我不确定在导出之前是否需要在Blender中做任何事情,以确保动画/模型保持完整。
值得注意的是,马鞍和垫子是单独的对象,我已将它们父级到我的Horse骨骼下。我这样做是因为我希望它们在马奔跑动画发生时稍微移动。
我附上了一些截图,我的.blend文件如下。有人有什么建议可以帮助我正确导出此模型吗?(目前,在GLTF Viewer中使其工作就足够了)

马的混合文件

Blender view

Horse model in GLTF Viewer


1
嗯,你的 blend 文件链接似乎已经失效了... - Mugen87
它在我的Chrome上运行正常,但这里有一个混合文件的zip链接。http://www.thefarmventures.com/images/horseNew.blend.zip - Matthew Corway
我已经使用默认设置从Blender 2.8导出为glTF格式,并将其导入到https://gltf-viewer.donmccurdy.com/。一切看起来都很好。你能否尝试在全新安装的Blender 2.8中打开它? - Mugen87
2
我成功(大部分)地将其导出,方法是在对象模式下单击网格,然后按ctrl+a并单击位置、旋转和缩放(对于马、鞍和垫子)。这个方法大多数情况下都有效,也让我看到我需要清理网格的很多地方。 - Matthew Corway
1个回答

2

当电枢和网格的位置不同时,就会发生这种扭曲现象。

在Blender中选择全部并按下⎈ CtrlA->旋转和缩放

你会发现马鞍和毯子的位置不正确,你应该给它们添加一个骨骼修饰器,使它们跟随马一起移动。这是因为Blender使用z-up并导出到y-up环境(y-up转换是导出时的选项)。

最初的回答:


1
太好了,在我的情况下,我需要选择马的网格并重置位置。现在它可以工作了,谢谢!我将查看鞍具和毯子的骨架修改器。这是我的第一个模型,所以有点粗糙,我希望鞍毯能更像布一些,但不确定如何做到这一点并导出它。 - Matthew Corway

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接