Пример #1
0
        //Disable unity physics and collision. For moving item through code
        static public void FreezeItem(GameObject item, bool disableAllColliders = false, bool disableTriggerColliders = false, bool disableNonTriggerColliders = false)
        {
            VRInteractableItem.DisableObjectColliders(item, disableAllColliders, disableTriggerColliders, disableNonTriggerColliders);
            Rigidbody itemBody = item.GetComponent <Rigidbody>();

            if (itemBody != null)
            {
                RigidbodyMarker.ReplaceRigidbodyWithMarker(itemBody);
            }
        }
        //Disable unity physics and collision. For moving item through code
        static public void FreezeItem(GameObject item, bool disableAllColliders = false, bool disableTriggerColliders = false, bool disableNonTriggerColliders = false)
        {
            VRInteractableItem.DisableObjectColliders(item, disableAllColliders, disableTriggerColliders, disableNonTriggerColliders);
            Rigidbody itemBody = item.GetComponentInChildren <Rigidbody>();

            if (itemBody != null)
            {
                itemBody.velocity      = Vector3.zero;
                itemBody.useGravity    = false;
                itemBody.isKinematic   = true;
                itemBody.constraints   = RigidbodyConstraints.FreezeAll;
                itemBody.interpolation = RigidbodyInterpolation.None;
            }
        }