diff --git a/modules/jolt_physics/objects/jolt_body_3d.cpp b/modules/jolt_physics/objects/jolt_body_3d.cpp index 408a935973d..59ba42c6ca9 100644 --- a/modules/jolt_physics/objects/jolt_body_3d.cpp +++ b/modules/jolt_physics/objects/jolt_body_3d.cpp @@ -1404,6 +1404,26 @@ void JoltBody3D::set_angular_damp(float p_damp) { _update_damp(); } +void JoltBody3D::set_linear_damp_mode(DampMode p_mode) { + if (p_mode == linear_damp_mode) { + return; + } + + linear_damp_mode = p_mode; + + _update_damp(); +} + +void JoltBody3D::set_angular_damp_mode(DampMode p_mode) { + if (p_mode == angular_damp_mode) { + return; + } + + angular_damp_mode = p_mode; + + _update_damp(); +} + bool JoltBody3D::is_axis_locked(PhysicsServer3D::BodyAxis p_axis) const { return (locked_axes & (uint32_t)p_axis) != 0; } diff --git a/modules/jolt_physics/objects/jolt_body_3d.h b/modules/jolt_physics/objects/jolt_body_3d.h index 50a5c2a293f..dc1e258bec8 100644 --- a/modules/jolt_physics/objects/jolt_body_3d.h +++ b/modules/jolt_physics/objects/jolt_body_3d.h @@ -287,10 +287,10 @@ public: void set_collision_priority(float p_priority) { collision_priority = p_priority; } DampMode get_linear_damp_mode() const { return linear_damp_mode; } - void set_linear_damp_mode(DampMode p_mode) { linear_damp_mode = p_mode; } + void set_linear_damp_mode(DampMode p_mode); DampMode get_angular_damp_mode() const { return angular_damp_mode; } - void set_angular_damp_mode(DampMode p_mode) { angular_damp_mode = p_mode; } + void set_angular_damp_mode(DampMode p_mode); bool is_axis_locked(PhysicsServer3D::BodyAxis p_axis) const; void set_axis_lock(PhysicsServer3D::BodyAxis p_axis, bool p_enabled);