剥皮矩阵意外地缩放网格

时间:2013-05-16 01:07:28

标签: opengl skinning

我有一个三维矢量模型,我根据Collada规范应用了一系列加权变换矩阵,并为模型设置了动画效果。虽然我已经验证了矩阵中的缩放信息都是标识符并且权重加起来1.0,但动画效果很好但模型正在缩放。我还验证了在蒙皮过程中我没有应用投影矩阵两次。

最后,我确认当我绕过皮肤代码时,模型会正确缩放。

那么:有什么可以导致模型缩放(~0.5)有什么明显的吗?

这是相关的着色器代码:

vec3 pos = vec4( 0.0, 0.0, 0.0 );
for( int j = 0; j < 4; j++ )
{
    float weight = weights[j];
    pos += (jointMats[j] * (jointInvMats[j] * inpos)) * weight;
}
由于Christian和Andreas在下面的评论中改变了

[EDIT]代码以反映正确的矩阵/顶点乘法。但是,最初的问题仍然存在。

0 个答案:

没有答案