在blender2.6api中,PoseBone用于设置骨骼的动画。PoseBone.matrix公司是一种方法。API说PoseBone.matrix公司在“对象空间”中。在
在PoseBone.matrix公司我什么都没见过。 我还是不能让我的动画导入器工作。 怎么回事PoseBone.matrix?在blender2.4api中有两个矩阵:一个在局部空间,一个在电枢空间。在
但是新的PoseBone.matrix公司都不是!这不是一个局部矩阵:
位置不是局部的,而是全球性的。在
但是旋转
<Euler (x=1.5708, y=-0.7854, z=-0.0000), order='XYZ'>
是的。在
那么API所说的“对象空间”是什么呢PoseBone.matrix公司在吗?在
我试图把我的电枢空间矩阵分配到一个层次的电枢,但我不能得到正确的结果。在
我试着分解我拥有的矩阵,撤消父循环,然后重新组合矩阵,然后将其设置为“PoseBone.matrix公司". 只是不起作用。在
^{pr2}$
矩阵在对象空间中,它的行为应该像您期望的代码那样。现在的情况是,骨骼的矩阵在改变矩阵后并没有立即更新。到目前为止,我已经找到了一个黑客解决方案,在每根骨头之后更新整个场景
编辑: 我找到了将这些对象空间转换为骨骼局部空间的解决方案。在
长话短说,下面是一个完成该任务的代码片段:
我的老问题:
你找到解决办法了吗? 我在处理同样的问题。在
对象空间矩阵应该是相对于父对象空间矩阵表示的骨骼局部空间矩阵,因此:
boneOS=parentOS*boneLS
但正如你所注意到的-它没有给出正确的解决方案。骨骼仍然偏移。 我想到的一件事是,它被静止姿势变换抵消了,所以我试着把它向后滚动,但那也没用,但也许我用的方程是错的。在
下面是我如何计算姿势骨骼的局部空间变换(假设骨骼1是我感兴趣的骨骼,骨骼0是其父骨骼,而0没有父骨骼):
^{pr2}$相关问题 更多 >
编程相关推荐