Exemplo n.º 1
0
    public bool SetLeftHandedMode(bool leftHandedInEditor = false)
    {
        if (!this.Initialized)
        {
            return(false);
        }

        bool _changed = false, _lefthanded = false;

        #if UNITY_EDITOR
        if (Application.isEditor)
        {
            _lefthanded = leftHandedInEditor;
        }
        else
        #endif
        {
            _lefthanded = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? true : false;
        }

        if (WaveVR_Controller.IsLeftHanded != _lefthanded)
        {
            _changed = true;

            PrintInfoLog("SetLeftHandedMode() Set left-handed mode to " + _lefthanded);
            WaveVR_Controller.SetLeftHandedMode(_lefthanded);
        }
        else
        {
            PrintInfoLog("SetLeftHandedMode() not change default role: " + (_lefthanded ? "LEFT." : "RIGHT."));
        }

        return(_changed);
    }
Exemplo n.º 2
0
    public bool SetLeftHandedMode(bool leftHandedInEditor = false)
    {
        if (!this.Initialized)
        {
            return(false);
        }

        bool _changed = false, _lefthanded = false;

#if UNITY_EDITOR && UNITY_ANDROID
        if (Application.isEditor)
        {
            _lefthanded = leftHandedInEditor;
        }
        else
                #endif
        {
            _lefthanded = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? true : false;
        }

        if (WaveVR_Controller.IsLeftHanded != _lefthanded)
        {
            _changed = true;

            Log.i(LOG_TAG, Log.CSB.Append("SetLeftHandedMode() Set left-handed mode to ").Append(_lefthanded).ToString());
            WaveVR_Controller.SetLeftHandedMode(_lefthanded);
        }
        else
        {
            Log.i(LOG_TAG, Log.CSB.Append("SetLeftHandedMode() not change default role: ").Append(_lefthanded ? "LEFT." : "RIGHT.").ToString());
        }

        return(_changed);
    }
Exemplo n.º 3
0
    private void HandleRoleChange()
    {
        if (WaveVR.Instance != null)
        {
            bool _lefthanded = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? true: false;

            Log.i(LOG_TAG, "HandleRoleChange() Set left-handed mode to " + _lefthanded);
            WaveVR_Controller.SetLeftHandedMode(_lefthanded);
            Log.i(LOG_TAG, "HandleRoleChange() Resend connection notification after switching hand.");
            WaveVR.Instance.OnControllerRoleChange();
        }
    }
Exemplo n.º 4
0
    private void processVREvent(WVR_Event_t vrEvent)
    {
        // Process events used by plugin
        switch ((WVR_EventType)vrEvent.common.type)
        {
        case WVR_EventType.WVR_EventType_IpdUpdate:
        {
            WaveVR_Utils.Event.Send("IpdChanged");
            if (WaveVR_Render.Instance != null)
            {
                WaveVR_Render.Expand(WaveVR_Render.Instance);
            }
        }
        break;

        case WVR_EventType.WVR_EventType_DeviceStatusUpdate:
        {
            WaveVR_Utils.Event.Send("TrackedDeviceUpdated", vrEvent.device.common.type);
        }
        break;

        case WVR_EventType.WVR_EventType_BatteryStatus_Update:
        {
            WaveVR_Utils.Event.Send("BatteryStatus_Update");
        }
        break;

        case WVR_EventType.WVR_EventType_TouchpadSwipe_LeftToRight:
        case WVR_EventType.WVR_EventType_TouchpadSwipe_RightToLeft:
        case WVR_EventType.WVR_EventType_TouchpadSwipe_DownToUp:
        case WVR_EventType.WVR_EventType_TouchpadSwipe_UpToDown:
            WaveVR_Utils.Event.Send("SWIPE_EVENT", vrEvent.common.type);
            break;

        case WVR_EventType.WVR_EventType_Settings_Controller:
            if (WaveVR.Instance != null)
            {
                WaveVR_Controller.SetLeftHandedMode();
                Log.i(LOG_TAG, "Set left-handed mode to " + WaveVR_Controller.IsLeftHanded);
            }
            break;

        default:
            break;
        }

        // Send event to developer for all kind of event if developer don't want to add callbacks for every event.
        WaveVR_Utils.Event.Send(WaveVR_Utils.Event.ALL_VREVENT, vrEvent);

        // Send event to developer by name.
        WaveVR_Utils.Event.Send(vrEvent.common.type.ToString(), vrEvent);
    }
Exemplo n.º 5
0
    void Start()
    {
        if (WaveVR.Instance != null)
        {
            WaveVR.Instance.onLoadLevel();

            // if system boots with default controller role left, set left-handed mode to true
            bool _lefthanded = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? true: false;
            #if UNITY_EDITOR
            Debug.Log("Start() Set left-handed mode to " + _lefthanded);
            #endif
            Log.i(LOG_TAG, "Start() Set left-handed mode to " + _lefthanded);
            WaveVR_Controller.SetLeftHandedMode(_lefthanded);
        }
    }
Exemplo n.º 6
0
    private void SetLeftHandedMode()
    {
        if (WaveVR.Instance != null)
        {
            bool _lefthanded = false;
#if UNITY_EDITOR
            if (Application.isEditor)
            {
            }
            else
#endif
            {
                _lefthanded = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? true: false;
            }

            Log.i(LOG_TAG, "SetLeftHandedMode() Set left-handed mode to " + _lefthanded);
            WaveVR_Controller.SetLeftHandedMode(_lefthanded);
        }
    }
    public void OnChangeHand()
    {
        #if UNITY_EDITOR
        if (Application.isEditor)
        {
            WaveVR_Controller.SetLeftHandedMode(WaveVR_Controller.IsLeftHanded ? false : true);
        }
        else
        #endif
        {
            if (pmInstance != null)
            {
                Log.d(LOG_TAG, "isPermissionGranted(com.htc.vr.core.server.VRDataWrite) = " + pmInstance.isPermissionGranted("com.htc.vr.core.server.VRDataWrite"));
                Log.d(LOG_TAG, "isPermissionGranted(com.htc.vr.core.server.VRDataRead) = " + pmInstance.isPermissionGranted("com.htc.vr.core.server.VRDataRead"));
                Log.d(LOG_TAG, "isPermissionGranted(com.htc.vr.core.server.VRDataProvider) = " + pmInstance.isPermissionGranted("com.htc.vr.core.server.VRDataProvider"));
            }

            AndroidJavaClass ajc = new AndroidJavaClass(CONTENT_PROVIDER_CLASSNAME);
            if (ajc == null)
            {
                Log.e(LOG_TAG, "OnChangeHand() " + CONTENT_PROVIDER_CLASSNAME + " is null");
                return;
            }
            // Get the PermissionManager object
            contentProvider = ajc.CallStatic <AndroidJavaObject>("getInstance");
            if (contentProvider != null)
            {
                string _role = Interop.WVR_GetDefaultControllerRole() == WVR_DeviceType.WVR_DeviceType_Controller_Left ? "2" : "1";
                Log.d(LOG_TAG, "OnChangeHand() got instance of " + CONTENT_PROVIDER_CLASSNAME + ", change role to " + _role);
                contentProvider.Call("writeControllerRoleValue", _role);
            }
            else
            {
                Log.e(LOG_TAG, "OnChangeHand() could NOT get instance of " + CONTENT_PROVIDER_CLASSNAME);
            }
        }
    }