Example #1
0
    // handle hover/exit of ui objects
    private void CheckForUI()
    {
        var _heading = thisTransform.position - offsetTransform.position;
        var _target  = offsetTransform.position + _heading.normalized * interactDistance;

        if (!Physics.Raycast(offsetTransform.position, _heading.normalized, out RaycastHit hit, interactDistance, uiLayers))
        {
            if (currentSelected != null)
            {
                currentSelected.OnExit();
                currentSelected = null;
            }

            // if touch show ray
            if (OVRInput.Get(OVRInput.Touch.PrimaryIndexTrigger, controller))
            {
                if (!isGameScene || isMenuOpen)
                {
                    rend.enabled = true;
                    rend.SetPosition(0, thisTransform.position);
                    rend.SetPosition(1, _target);
                }
            }
            else
            {
                if (rend.enabled)
                {
                    rend.enabled = false;
                }
            }
        }
Example #2
0
 private void Awake()
 {
     currentSelected = null;
     thisTransform   = transform;
     rend            = GetComponent <LineRenderer>();
     haptic          = GetComponent <ControllerHaptic>();
 }
Example #3
0
 // handle hover/exit of ui objects
 private void CheckForUI()
 {
     if (!Physics.Raycast(thisTransform.position, thisTransform.forward, out RaycastHit hit, interactDistance, uiLayers))
     {
         if (currentSelected != null)
         {
             currentSelected.OnExit();
             currentSelected = null;
         }
     }
Example #4
0
    // check if ui interaction is happening
    private void Update()
    {
        CheckForUI();

        // click ui if possible
        if (OVRInput.Get(OVRInput.Button.PrimaryIndexTrigger, controller) && canClick && currentSelected != null)
        {
            canClick = false;
            currentSelected.OnClick();
            currentSelected.OnExit();
            currentSelected = null;
            StartCoroutine(ResetClick());
        }
    }
Example #5
0
    // check if ui interaction is happening
    private void Update()
    {
        CheckForUI();

        // click ui if possible
        if (InputBridgeBase.instance.Interact && canClick && currentSelected != null)
        {
            canClick = false;
            currentSelected.OnClick();
            currentSelected.OnExit();
            currentSelected = null;
            StartCoroutine(ResetClick());
        }
    }
Example #6
0
 private void OnDisable()
 {
     currentSelected = null;
     SceneManager.activeSceneChanged -= ResetMenuState;
 }
Example #7
0
 private void OnDisable()
 {
     currentSelected = null;
 }
Example #8
0
 private void Awake()
 {
     currentSelected = null;
     thisTransform   = transform;
 }