예제 #1
0
    void OnDestroy()
    {
        if (enableSignalControl)
        {
            HandGestureManager.Instance.Controller <HandSignalController>().unregisterCallbackFromInspector(handSignalCallback);
            handSignalCallback = null;
        }
        if (enableCursorControl)
        {
            HandGestureManager.Instance.Controller <HandCursorController>().unregisterCallbackFromInspector(handCursorCallback);
            handCursorCallback = null;
        }
        if (enableGrabControl)
        {
            HandGestureManager.Instance.Controller <HandGrabController>().unregisterCallbackFromInspector(handGrabCallback);
            handGrabCallback = null;
        }
        if (enableRawTrackingControl)
        {
            HandGestureManager.Instance.Controller <HandTrackingController>().unregisterCallbackFromInspector(handTrackingCallback);
            handTrackingCallback = null;
        }
        HandGestureManager.Instance.Destroy();


        mMADSDKIntegratorHandSignal.OnDestroy();
        mMADSDKIntegratorHandCursor.OnDestroy();
        mMADSDKIntegratorTrackedHand.OnDestroy();
        mMADSDKIntegratorGrab.OnDestroy();
    }
예제 #2
0
        public void registerCallbackFromInspector(HandGrabCallback callback, bool enableOnStartup)
        {
            Log("registerCallbackFromInspector");
            if (enableOnStartup)
            {
                this.Enabled = true;
            }

            if (callback.OnStarted != null)
            {
                _handGestureGrabStartedEvent.Add(callback.OnStarted);
            }
            if (callback.OnMoved != null)
            {
                _handGestureGrabMovedEvent.Add(callback.OnMoved);
            }
            if (callback.OnEnded != null)
            {
                _handGestureGrabEndedEvent.Add(callback.OnEnded);
            }
            if (callback.OnCancelled != null)
            {
                _handGestureGrabCancelledEvent.Add(callback.OnCancelled);
            }
        }
예제 #3
0
        public void unregisterCallbackFromInspector(HandGrabCallback callback)
        {
            Log("unregisterCallbackFromInspector");

            if (callback.OnStarted != null)
            {
                _handGestureGrabStartedEvent.Remove(callback.OnStarted);
            }
            if (callback.OnMoved != null)
            {
                _handGestureGrabMovedEvent.Remove(callback.OnMoved);
            }
            if (callback.OnEnded != null)
            {
                _handGestureGrabEndedEvent.Remove(callback.OnEnded);
            }
            if (callback.OnCancelled != null)
            {
                _handGestureGrabCancelledEvent.Remove(callback.OnCancelled);
            }
        }