0

我一直在研究 RagdollDemo 并且有点卡在 setEulerZYX() 用于基础矩阵的部分。

transform.setIdentity();
transform.setOrigin(btVector3(btScalar(-0.35), btScalar(1.45),     btScalar(0.)));
  transform.getBasis().setEulerZYX(0,0,M_PI_2);
  m_bodies[BODYPART_LEFT_UPPER_ARM] = localCreateRigidBody(btScalar(1.), offset*transform, m_shapes[BODYPART_LEFT_UPPER_ARM]);

我做了一些研究,但不能完全理解这个函数究竟做了什么以及为什么需要它。任何帮助都会非常好。

4

1 回答 1

1

这是设置身体旋转的一种方式(还有其他方式)。

http://bulletphysics.org/Bullet/BulletFull/classbtMatrix3x3.html#a0acce3d3502e34b4f34efd275c140d2a

所以这将它设置为0,0,M_PI_2M_PI_2Pi/2意味着这是在 x 轴上旋转 1/4 圈,即 90 度。

于 2015-02-13T08:40:46.183 回答