private void InitPrimaryGrab(VRTK_InteractableObject currentGrabbedObject) { if (!currentGrabbedObject.IsValidInteractableController(gameObject, currentGrabbedObject.allowedGrabControllers)) { grabbedObject = null; if (currentGrabbedObject.IsGrabbed(gameObject)) { interactTouch.ForceStopTouching(); } return; } influencingGrabbedObject = false; currentGrabbedObject.SaveCurrentState(); currentGrabbedObject.Grabbed(gameObject); currentGrabbedObject.ZeroVelocity(); currentGrabbedObject.ToggleHighlight(false); currentGrabbedObject.ToggleKinematic(false); //Pause collisions (if allowed on object) for a moment whilst sorting out position to prevent clipping issues currentGrabbedObject.PauseCollisions(); if (currentGrabbedObject.grabAttachMechanic == VRTK_InteractableObject.GrabAttachType.Child_Of_Controller) { currentGrabbedObject.ToggleKinematic(true); } }