diff --git a/Runtime/Tools/Physics/HybridPhysics.cs b/Runtime/Tools/Physics/HybridPhysics.cs index 623ac4f..3c4140e 100644 --- a/Runtime/Tools/Physics/HybridPhysics.cs +++ b/Runtime/Tools/Physics/HybridPhysics.cs @@ -382,6 +382,14 @@ namespace Passer { UnsetCollidersToTrigger(colliders); } + public static void SetNonKinematic(Rigidbody rigidbody, List colliders) { + if (rigidbody == null) + return; + + rigidbody.isKinematic = false; + UnsetCollidersToTrigger(colliders); + } + /// /// Switches this Rigidbody to Hybrid Kinematic Mode /// @@ -426,6 +434,16 @@ namespace Passer { return changedColliders; } + public static List SetKinematic(Rigidbody rigidbody) { + if (rigidbody == null) + return new List(); + + rigidbody.isKinematic = true; + Collider[] colliders = rigidbody.GetComponentsInChildren(); + List changedColliders = SetCollidersToTrigger(rigidbody, colliders); + return changedColliders; + } + #endregion #region Colliders