protected override void Start() { base.Start(); // Set up our max grab distance to be based on the player's max grab distance. // Adding a liberal margin of error here, because users can move away some from the // OVRPlayerController, and also players have arms. // Note that there's no major downside to making this value too high, as objects // outside the player's grabbable trigger volume will not be eligible targets regardless. SphereCollider sc = m_player.GetComponentInChildren <SphereCollider>(); m_maxGrabDistance = sc.radius + 3.0f; if (m_parentHeldObject == true) { Debug.LogError("m_parentHeldObject incompatible with DistanceGrabber. Setting to false."); m_parentHeldObject = false; } DistanceGrabber[] grabbers = FindObjectsOfType <DistanceGrabber>(); for (int i = 0; i < grabbers.Length; ++i) { if (grabbers[i] != this) { m_otherHand = grabbers[i]; } } Debug.Assert(m_otherHand != null); #if UNITY_EDITOR OVRPlugin.SendEvent("distance_grabber", (SceneManager.GetActiveScene().name == "DistanceGrab").ToString(), "sample_framework"); #endif }
protected override void Start() { base.Start(); // Basic hack to guess at max grab distance based on player size. // Note that there's no major downside to making this value too high, as objects // outside the player's grabbable trigger volume will not be eligible targets regardless. Collider sc = m_player.GetComponentInChildren <Collider>(); if (sc != null) { m_maxGrabDistance = sc.bounds.size.z * 0.5f + 3.0f; } else { m_maxGrabDistance = 12.0f; } if (m_parentHeldObject == true) { Debug.LogError("m_parentHeldObject incompatible with DistanceGrabber. Setting to false."); m_parentHeldObject = false; } DistanceGrabber[] grabbers = FindObjectsOfType <DistanceGrabber>(); for (int i = 0; i < grabbers.Length; ++i) { if (grabbers[i] != this) { m_otherHand = grabbers[i]; } } Debug.Assert(m_otherHand != null); #if UNITY_EDITOR OVRPlugin.SendEvent("distance_grabber", (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "DistanceGrab").ToString(), "sample_framework"); #endif }