瀏覽代碼

Merge pull request #32845 from madmiraal/rigidbody-mode-change

Activate Body(2D)SW when switching to rigid or character mode.
Rémi Verschelde 5 年之前
父節點
當前提交
5cdecb8227
共有 2 個文件被更改,包括 4 次插入0 次删除
  1. 2 0
      servers/physics/body_sw.cpp
  2. 2 0
      servers/physics_2d/body_2d_sw.cpp

+ 2 - 0
servers/physics/body_sw.cpp

@@ -260,12 +260,14 @@ void BodySW::set_mode(PhysicsServer::BodyMode p_mode) {
 
 			_inv_mass = mass > 0 ? (1.0 / mass) : 0;
 			_set_static(false);
+			set_active(true);
 
 		} break;
 		case PhysicsServer::BODY_MODE_CHARACTER: {
 
 			_inv_mass = mass > 0 ? (1.0 / mass) : 0;
 			_set_static(false);
+			set_active(true);
 			angular_velocity = Vector3();
 		} break;
 	}

+ 2 - 0
servers/physics_2d/body_2d_sw.cpp

@@ -238,6 +238,7 @@ void Body2DSW::set_mode(Physics2DServer::BodyMode p_mode) {
 			_inv_mass = mass > 0 ? (1.0 / mass) : 0;
 			_inv_inertia = inertia > 0 ? (1.0 / inertia) : 0;
 			_set_static(false);
+			set_active(true);
 
 		} break;
 		case Physics2DServer::BODY_MODE_CHARACTER: {
@@ -245,6 +246,7 @@ void Body2DSW::set_mode(Physics2DServer::BodyMode p_mode) {
 			_inv_mass = mass > 0 ? (1.0 / mass) : 0;
 			_inv_inertia = 0;
 			_set_static(false);
+			set_active(true);
 			angular_velocity = 0;
 		} break;
 	}