Esempio n. 1
0
        /// <summary>
        /// Starts the MLInput, initializes the first controller, and registers the connection handlers
        /// </summary>
        void Awake()
        {
            if (!MLInput.IsStarted)
            {
                MLInputConfiguration config = new MLInputConfiguration(MLInputConfiguration.DEFAULT_TRIGGER_DOWN_THRESHOLD,
                                                                       MLInputConfiguration.DEFAULT_TRIGGER_UP_THRESHOLD,
                                                                       true);
                MLResult result = MLInput.Start(config);
                if (!result.IsOk)
                {
                    Debug.LogErrorFormat("Error: ControllerConnectionHandler failed starting MLInput, disabling script. Reason: {0}", result);
                    enabled = false;
                    return;
                }
            }

            MLInput.OnControllerConnected    += HandleOnControllerConnected;
            MLInput.OnControllerDisconnected += HandleOnControllerDisconnected;

            GetAllowedInput();
        }
Esempio n. 2
0
        /// <summary/>
        protected override void Start()
        {
            base.Start();

            if (_mainCanvas == null)
            {
                Debug.LogError("Error: MLInputModule, _mainCanvas field is empty, disabling script.");
                enabled = false;
                return;
            }

            _mainCamera = Camera.main;

            if (_mainCamera == null)
            {
                Debug.LogError("Error: MLInputModule, no camera found tagged as MainCamera, disabling script.");
                enabled = false;
                return;
            }

            _mainCanvas.worldCamera = _mainCamera;

            SceneManager.activeSceneChanged += ChangedActiveScene;

            // Eye Tracking
            if (_pointerInput == PointerInputType.EyeTracking)
            {
                #if PLATFORM_LUMIN
                MLResult result = MLEyes.Start();
                if (!result.IsOk)
                {
                    Debug.LogErrorFormat("Error: MLInputModule failed starting MLEyes, disabling script. Reason: {0}", result);
                    enabled = false;
                    return;
                }
                #endif
            }

            #if PLATFORM_LUMIN
            // Controllers
            if (!MLInput.IsStarted)
            {
                MLInput.Configuration config = new MLInput.Configuration(true);
                MLResult result = MLInput.Start(config);
                if (!result.IsOk)
                {
                    Debug.LogErrorFormat("Error: MLInputModule failed starting MLInput, disabling script. Reason: {0}", result);
                    enabled = false;
                    return;
                }
            }
            #endif

            AddController(0);
            AddController(1);

            #if PLATFORM_LUMIN
            // Track connect / disconnect
            MLInput.OnControllerConnected    += HandleOnControllerConnected;
            MLInput.OnControllerDisconnected += HandleOnControllerDisconnected;

            _pointerInputDevice = new MLInputDevice();
            _pointerInputDevice.Initialize();
            _cachedTrackedPointerEventData = new MLInputDeviceEventData(eventSystem);
            #endif
        }