我正在项目中使用 three.js(版本61)与WebGL渲染器进行实时动画,其中包含Kinect检测到的数据。
我使用了 THREE.SkinnedMesh 对象来建立支持骨架动画的3D模型。
我在这些场景中测试了实时骨骼动画:
......我有这个结果:
https://docs.google.com/file/d/0B6yEkHWd_4nEVkJ4RzZuMENmZUE/edit?pli=1
在Windows上,问题是某个顶点的最终位置计算不好!
我使用过这些浏览器:
......结果是一样的。
问题是处理不同的GPU驱动程序和WebGL吗? 我对这个话题没有很好的了解。
在Windows系统上使用THREE.SkinnedMesh对象执行动画时是否有人遇到并解决了类似的问题?
注意
用于测试方案
- 我模拟了Kinect:Web App从本地运行的服务器接收数据。
- 我已经将装配模型从Blender导出到three.js,皮肤网格的所有参数都很好地导出(如第二次测试所示)。
答案 0 :(得分:2)
即使这个答案不是我遇到的问题的完整解释,解决方案是重复使用Blender中的自动换肤工具将一些顶点重新分配给骨骼。
通过这种方式,导出的权重也被修改,不需要的工件也消失了。