btMultiBody中关节的抽搐

时间:2018-01-19 11:38:02

标签: physics physics-engine bulletphysics bullet

我有基于btMultiBody的简单车辆。参考附带的GIF,它的底座是中心的矩形块,它包含四个圆柱形轮子,用btMultiBody::setupRevolute连接。每个车轮都包含一个关节马达,其配置使得车身在现场旋转。一切都运作良好,然而,每半个车轮旋转都会发生轻微的抽搐。有没有人对这种抽搐可能来自哪里有任何想法?请注意,红色球体只是标记,并且在btMultiBodyDynamicsWorld内没有表示。一个(可能)重要的点,身体的位置通过btMultibodyLink::m_cachedWorldTransform呈现,我没有使用任何运动状态等。

overhead view

1 个答案:

答案 0 :(得分:0)

模型的问题实际上不是由于物理原因,而是由于OpenGL中的图形。对于OpenGL,我们将四元数转换为Euler角,并且对于检测和处理万向节锁定具有太大的余量。减少此余量可以显着改善可视化效果。