我试图在 Three.js 中找到或创建反向运动学姿势的工作示例。理想情况下,我想通过他们的 Collada 导出器从 Makehuman 导出人体模型,使用 THREE.ColladaLoader 加载它们,并以编程方式或通过某些 dat.GUI 界面将它们设置为 Three.js 中的不同姿势。有点像艺术家娃娃的实现 - 我不需要动画,但调整姿势时的实时反馈会很好,并且反向运动风格姿势将是高度首选。
这几天我一直在学习和查找信息。这个http://www.youtube.com/watch?v=6om9xy6rnc0非常接近,但我无法找到任何示例代码或下载。我发现的最接近的工作示例是这样的:http://mrdoob.github.com/third.js/examples/webgl_animation_skinning.html但是,这似乎使用预定义的动画帧,而这又似乎在正向运动学中操纵骨骼方式,所以这也没有多大帮助。
我什至找不到用于测试的模型,因为我不知道在搜索与 Three.js 兼容的 IK 装备/蒙皮/骨骼时要寻找什么。MakeHuman 似乎确实有很多装备导出选项,我不知道其中是否有用。
Three.js 中是否有可用的 IK 系统,如果有,是否有任何工作示例、工作人体模型或任何关于应研究哪种精确绑定系统/工作流程来实现此目的的提示?如果无法直接支持 Collada,也可以选择在 Blender 中创建角色并导出它们。
编辑:找到了这个现场演示http://www.akjava.com/demo/poseeditor/但代码完全不可读。
我不觉得自己有足够的能力回答你的问题,但我会发布三个链接,这可能会让你走上正轨。
\n\nwylieconlon/kinematics
\n\xe2\x80\x93 一个很棒的 2D 逆运动学动画演示。代码是完全可读的。
https://www.khanacademy.org/computer-programming/inverse-kinematics/1191743453
\n\xe2\x80\x93 另一个演示,这次不太灵活但更简洁。
如何计算逆运动学
\n\xe2\x80\x93 链接的兔子洞。以防万一您\xe2\x80\x99d 想要直接深入了解。