You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2026-01-06 19:41:11 +00:00
Reload kinematic shapes when changing PhysicsBody mode to Kinematic
Prevents a crash when calling test_body_motion. Call reload_kinematic_shapes from init_kinematic_utilities as they are always called together. (cherry picked from commits112985c5bcand3540e716f9)
This commit is contained in:
@@ -320,6 +320,7 @@ RigidBodyBullet::~RigidBodyBullet() {
|
||||
|
||||
void RigidBodyBullet::init_kinematic_utilities() {
|
||||
kinematic_utilities = memnew(KinematicUtilities(this));
|
||||
reload_kinematic_shapes();
|
||||
}
|
||||
|
||||
void RigidBodyBullet::destroy_kinematic_utilities() {
|
||||
|
||||
@@ -967,7 +967,6 @@ bool SpaceBullet::test_body_motion(RigidBodyBullet *p_body, const Transform &p_f
|
||||
|
||||
if (!p_body->get_kinematic_utilities()) {
|
||||
p_body->init_kinematic_utilities();
|
||||
p_body->reload_kinematic_shapes();
|
||||
}
|
||||
|
||||
btVector3 initial_recover_motion(0, 0, 0);
|
||||
@@ -1109,7 +1108,6 @@ int SpaceBullet::test_ray_separation(RigidBodyBullet *p_body, const Transform &p
|
||||
|
||||
if (!p_body->get_kinematic_utilities()) {
|
||||
p_body->init_kinematic_utilities();
|
||||
p_body->reload_kinematic_shapes();
|
||||
}
|
||||
|
||||
btVector3 recover_motion(0, 0, 0);
|
||||
|
||||
Reference in New Issue
Block a user