Blender导出three.js动画时骨骼旋转奇怪

5

我目前正在尝试使用three.js的导出工具(github.com/mrdoob/three.js/tree/dev/utils/exporters/blender/2.66/scripts/addons)将一个动画的blender模型导出到three.js。

我已经创建了一个包含骨骼和权重以及微小动画的模型。

我的问题是:模型被破坏了。不知何故,骨骼不是围绕它们自己的原点旋转,而是围绕根骨骼的原点旋转。手动移动骨骼没有任何区别。

我遵循了这些教程: devmatrix.wordpress.com/2013/02/27/creating-skeletal-animation-in-blender-and-exporting-it-to-three-js/ dev.mothteeth.com/2012/10/threejs-blender-exporting-skeletal-animations/

我已经: 删除了骨架 检查了顶点组 在第一帧和最后一帧中对所有骨骼进行了关键帧设置。

我已经访问了GitHub和Stack Overflow上的几乎每个主题。这些似乎是这些错误的主要问题。但我想我仍然错过了什么。 :(

我已经上传了包括blender文件和导出动画在内的所有文件。 http://www.file-upload.net/download-8068001/forum-files.rar.html 有什么建议吗? 非常感谢。

4个回答

8
问题在于导出模型之前未重置位置/旋转/缩放。
在导出模型之前,选择网格并按CTRL+A选择位置。重复执行旋转和缩放操作,然后选择骨架并执行相同的操作。现在就可以正常工作了。

2
我已经下载了教程包和你的代码。代码方面看起来不错。但是当我查看模型时,发现你的顶点组没有很好地定义。当我选择左锁骨、左上臂、左下臂时,似乎混合了来自躯干、头部等部位的顶点。我怀疑你看到的奇怪肩部伸展动画是因为锁骨是其他分组的一部分,在导出时网格的“权重”被混淆,导致骨骼在网格上拉扯得很严重。尝试清理顶点组,看看是否有所帮助。 @lukasz1985 的想法很正确,赞一个! +1
P.S. 感谢提供 Three.js 的酷炫动画教程链接 :)

1
我遇到了一个问题,调用THREE.GeometryUtils.center(geometryWithBones)会导致新导入的几何体上所有皮肤看起来非常奇怪。删除此代码后问题得到解决。

0

同时,务必确保 three.js 的 Blender 导出器未设置为以任何方式对齐您的模型。(我将其设置为“居中”,花了我4个小时才弄清楚为什么我的骨骼围绕着在 Blender 中并非它们旋转的位置旋转。)


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