summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-01-11 11:57:41 +0100
committerGitHub <noreply@github.com>2020-01-11 11:57:41 +0100
commit0b185278f3e2f85252ef3f22e152e524c82298e2 (patch)
treed869714f1050c7a244e70d097f2c3f3d3fc81727
parent0ab1726b43dbe81c96d208a41a582435b76fd058 (diff)
parente0d252311e4c35e08785de0cadd747daba59f747 (diff)
Merge pull request #34225 from madmiraal/fix-34210
Add check for zero length motion at beginning of each sweep test loop in SpaceBullet::test_body_motion
-rw-r--r--modules/bullet/space_bullet.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/bullet/space_bullet.cpp b/modules/bullet/space_bullet.cpp
index e5b2ac3808..0f50d31611 100644
--- a/modules/bullet/space_bullet.cpp
+++ b/modules/bullet/space_bullet.cpp
@@ -945,7 +945,7 @@ bool SpaceBullet::test_body_motion(RigidBodyBullet *p_body, const Transform &p_f
btVector3 motion;
G_TO_B(p_motion, motion);
- if (!motion.fuzzyZero()) {
+ {
// Phase two - sweep test, from a secure position without margin
const int shape_count(p_body->get_shape_count());
@@ -960,7 +960,7 @@ bool SpaceBullet::test_body_motion(RigidBodyBullet *p_body, const Transform &p_f
motionVec->end();
#endif
- for (int shIndex = 0; shIndex < shape_count; ++shIndex) {
+ for (int shIndex = 0; shIndex < shape_count && !motion.fuzzyZero(); ++shIndex) {
if (p_body->is_shape_disabled(shIndex)) {
continue;
}