diff options
author | Nate Koenig <nate@openrobotics.org> | 2023-03-07 11:31:10 -0800 |
---|---|---|
committer | Nate Koenig <nate@openrobotics.org> | 2023-03-07 11:31:10 -0800 |
commit | 94e5b69379fea38d7cc13c808573e0ddab920f40 (patch) | |
tree | 4d192361f6f5cd65582d561f84c616f61082969d | |
parent | 2c204c49e56ed15ec5fcfa71d199ab6d6570b3f5 (diff) | |
download | bullet3-94e5b69379fea38d7cc13c808573e0ddab920f40.tar.gz |
Skip zeroAccSpatFrc for the constraint passes
Signed-off-by: Nate Koenig <nate@openrobotics.org>
-rw-r--r-- | src/BulletDynamics/Featherstone/btMultiBody.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/BulletDynamics/Featherstone/btMultiBody.cpp b/src/BulletDynamics/Featherstone/btMultiBody.cpp index d7588aedc..1bc2ffe22 100644 --- a/src/BulletDynamics/Featherstone/btMultiBody.cpp +++ b/src/BulletDynamics/Featherstone/btMultiBody.cpp @@ -936,7 +936,8 @@ void btMultiBody::computeAccelerationsArticulatedBodyAlgorithmMultiDof(btScalar if (m_useGyroTerm) zeroAccSpatFrc[i + 1].addAngular(spatVel[i + 1].getAngular().cross(m_links[i].m_inertiaLocal * spatVel[i + 1].getAngular())); // - zeroAccSpatFrc[i + 1].addLinear(m_links[i].m_mass * spatVel[i + 1].getAngular().cross(spatVel[i + 1].getLinear())); + if (!isConstraintPass) + zeroAccSpatFrc[i + 1].addLinear(m_links[i].m_mass * spatVel[i + 1].getAngular().cross(spatVel[i + 1].getLinear())); // //btVector3 temp = m_links[i].m_mass * spatVel[i+1].getAngular().cross(spatVel[i+1].getLinear()); ////clamp parent's omega |