diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2020-01-21 00:20:57 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2020-01-21 00:20:57 +0100 |
commit | 41b21dee019a643e35ee6e5462afe6bb4ffc2c5f (patch) | |
tree | 4ee354bf8420a1f215d12461bd4a99afb3bb99d2 | |
parent | b711c09bc8dd7b63963eb46b78cf9f24d48c95c0 (diff) |
Bullet: Prevent potential division by zero
Fixes #33715.
-rw-r--r-- | modules/bullet/rigid_body_bullet.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/bullet/rigid_body_bullet.cpp b/modules/bullet/rigid_body_bullet.cpp index 1dd75eb8a9..16a8cf8ede 100644 --- a/modules/bullet/rigid_body_bullet.cpp +++ b/modules/bullet/rigid_body_bullet.cpp @@ -795,12 +795,12 @@ Vector3 RigidBodyBullet::get_angular_velocity() const { void RigidBodyBullet::set_transform__bullet(const btTransform &p_global_transform) { if (mode == PhysicsServer::BODY_MODE_KINEMATIC) { - if (space) + if (space && space->get_delta_time() != 0) btBody->setLinearVelocity((p_global_transform.getOrigin() - btBody->getWorldTransform().getOrigin()) / space->get_delta_time()); // The kinematic use MotionState class godotMotionState->moveBody(p_global_transform); } else { - // Is necesasry to avoid wrong location on the rendering side on the next frame + // Is necessary to avoid wrong location on the rendering side on the next frame godotMotionState->setWorldTransform(p_global_transform); } CollisionObjectBullet::set_transform__bullet(p_global_transform); |