我正在尝试在three.js中找到或创建反向运动构图的工作示例。理想情况下,我想通过他们的Collada导出器从Makehuman导出人体模型,用THREE.ColladaLoader加载它们并以编程方式或通过一些dat.GUI接口将它们设置为three.js中的不同姿势。有点像艺术家玩偶实现 - 我不需要动画,但是在调整姿势时的实时反馈将是很好的,并且反向运动风格构成将是高度优选的。
我一直在研究和搜索信息。这个http://www.youtube.com/watch?v=6om9xy6rnc0非常接近,但我无法找到任何示例代码或下载。我发现的最接近的工作示例是这样的:http://mrdoob.github.com/three.js/examples/webgl_animation_skinning.html然而,似乎使用了预定义的动画帧,这反过来似乎以正向运动学方式操纵骨骼,因此也没有多大帮助。
我甚至找不到用于测试的模型,因为在使用与Three.js兼容的IK装备/皮肤/骨骼搜索某些内容时,我不知道该寻找什么。 Makehuman似乎确实有很多操纵输出选项,我不知道其中任何一个是否可用。
Three.js中是否有可用的IK系统,如果有的话,是否有任何工作示例,工作人体模型或任何有关精确索具系统/工作流程应该研究的提示来实现这一目标?如果无法直接支持Collada,在Blender中创建字符并导出它们也是一种选择..
编辑:发现这个现场演示http://www.akjava.com/demo/poseeditor/,但代码完全不可读。
答案 0 :(得分:2)
我觉得自己没有足够的能力回答你的问题,但我会发布三条链接,可能会让你走上正轨。
wylieconlon/kinematics
- 2D逆运动学动画的绝佳演示。代码完全可读。
https://www.khanacademy.org/computer-programming/inverse-kinematics/1191743453
- 另一个演示,这次灵活性较低但更简洁。
How to calculate inverse kinematics
- 兔子洞的链接。万一你想潜入这件事。
答案 1 :(得分:2)
这看起来很有希望。
Fullik:针对three.js上的反向运动学的javascript快速迭代求解器
是从java到Caliko 3D库的转换 Caliko库是FABRIK逆运动学(IK)算法的实现