Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (proximityDetector == true)
        {
            // Loop through hand array
            for (int i = 0; i < 10; i++)
            {
                // Get proximity detector component on each finger
                proxDetect = HandArr[i].GetComponent <Leap.Unity.ProximityDetector>();

                // If proximity detector has an object within range
                if (proxDetect.CurrentObject != null)
                {
                    // Track the active object with the array value
                    proxDetectActive = i;
                }

                // If active proximity detector leaves the object
                if (proxDetect.CurrentObject == null && proxDetectActive == i && (onText.activeSelf || offText.activeSelf))
                {
                    // Call Button UnPresed and reset
                    ButtonUnPressed();
                    proxDetectActive = -1;
                }
            }
        }
    }           //END UPDATE
Exemplo n.º 2
0
    private void initHand()
    {
        // Initialize Hand into an Array for ease of access
        HandArr[0] = LeftThumb;
        HandArr[1] = LeftIndexFinger;
        HandArr[2] = LeftMiddleFinger;
        HandArr[3] = LeftRingFinger;
        HandArr[4] = LeftPinkieFinger;
        HandArr[5] = RightThumb;
        HandArr[6] = RightIndexFinger;
        HandArr[7] = RightMiddleFinger;
        HandArr[8] = RightRingFinger;
        HandArr[9] = RightPinkieFinger;

        // Loop through hand array
        for (int i = 0; i < 10; i++)
        {
            //Initialize OnProximity to current object and ButtonPressed Method
            proxDetect = HandArr[i].GetComponent <Leap.Unity.ProximityDetector>();
            proxDetect.OnProximity.AddListener(delegate { ButtonPressed(); });
            proxDetect.TargetObjects = new GameObject[1];
            proxDetect.TargetObjects.SetValue(targetObject, 0);
        }
    }