Example #1
0
 /// <summary>
 ///     Assigns the new colliding object if it qualifies for focus.
 /// </summary>
 private void SetCollidingObject(Collider col)
 {
     if (!collidingObject && col.GetComponent <MidiVRInteraction>())
     {
         prevCollidingObject = collidingObject;
         collidingObject     = col.GetComponent <MidiVRInteraction>();
     }
 }
Example #2
0
    /// <summary>
    ///     Event fired whenever an object collider stops crossing the controller collider.
    /// </summary>
    public void OnTriggerExit(Collider other)
    {
        //Care only if the collider being exited is the current colliding object
        if (collidingObject && collidingObject.gameObject == other.gameObject)
        {
            //Stop interacting with the object if needed
            if (Controller.GetHairTrigger())
            {
                collidingObject.StopInteract(this);
            }

            //Restore the original shader if applicable
            if (shaderReplaced)
            {
                if (collidingObject.GetComponent <MeshRenderer>())
                {
                    collidingObject.GetComponent <MeshRenderer>().material.shader = originalShader;
                }
            }

            prevCollidingObject = collidingObject;
            collidingObject     = null;
        }
    }