public static bool InitializeTemporarySession(bool initInput = false) { if (Application.isEditor) { EVRInitError evrinitError = EVRInitError.None; OpenVR.GetGenericInterface("IVRCompositor_022", ref evrinitError); bool flag = evrinitError > EVRInitError.None; if (flag) { EVRInitError evrinitError2 = EVRInitError.None; OpenVR.Init(ref evrinitError2, EVRApplicationType.VRApplication_Overlay, ""); if (evrinitError2 != EVRInitError.None) { UnityEngine.Debug.LogError("<b>[SteamVR_Standalone]</b> Error during OpenVR Init: " + evrinitError2.ToString()); return(false); } SteamVR.IdentifyEditorApplication(false); SteamVR_Input.IdentifyActionsFile(false); SteamVR.runningTemporarySession = true; } if (initInput) { SteamVR_Input.Initialize(true); } return(flag); } return(false); }
public static bool InitializeTemporarySession(bool initInput = false) { if (Application.isEditor) { //bool needsInit = (!active && !usingNativeSupport && !runningTemporarySession); EVRInitError initError = EVRInitError.None; OpenVR.GetGenericInterface(OpenVR.IVRCompositor_Version, ref initError); bool needsInit = initError != EVRInitError.None; if (needsInit) { EVRInitError error = EVRInitError.None; OpenVR.Init(ref error, EVRApplicationType.VRApplication_Overlay); if (error != EVRInitError.None) { Debug.LogWarning("<b>[SteamVR]</b> Error during OpenVR Init: " + error.ToString()); //Debug.LogError("<b>[SteamVR]</b> Error during OpenVR Init: " + error.ToString()); if (RigCameraOnCB != null) { RigCameraOnCB(false); } if (MouseCameraOnCB != null) { MouseCameraOnCB(true); } return(false); } if (RigCameraOnCB != null) { RigCameraOnCB(true); } if (MouseCameraOnCB != null) { MouseCameraOnCB(false); } IdentifyEditorApplication(false); SteamVR_Input.IdentifyActionsFile(false); runningTemporarySession = true; } if (initInput) { SteamVR_Input.Initialize(true); } return(needsInit); } return(false); }
/// <summary> /// Configures the specified windows handler. /// </summary> /// <param name="windowsHandler">The windows handler.</param> public override void Configure(IntPtr windowsHandler) { base.Configure(windowsHandler); this.LoadNativeLibrary(); var error = EVRInitError.None; this.HmdDetected = true; this.Hmd = ValveOpenVR.Init(ref error, this.OpenVRApplicationType); if (error != EVRInitError.None) { OpenVRHelper.ReportInitError(error); this.Hmd = null; this.HmdDetected = false; } // Verify common interfaces are valid. ValveOpenVR.GetGenericInterface(ValveOpenVR.IVRCompositor_Version, ref error); if (error != EVRInitError.None) { OpenVRHelper.ReportInitError(error); this.HmdDetected = false; } ValveOpenVR.GetGenericInterface(ValveOpenVR.IVROverlay_Version, ref error); if (error != EVRInitError.None) { OpenVRHelper.ReportInitError(error); this.HmdDetected = false; } if (this.Hmd == null) { ValveOpenVR.Shutdown(); return; } }
private static SteamVR CreateInstance() { initializedState = InitializedStates.Initializing; try { var error = EVRInitError.None; #if !OPENVR_XR_API if (!SteamVR.usingNativeSupport) { ReportGeneralErrors(); initializedState = InitializedStates.InitializeFailure; SteamVR_Events.Initialized.Send(false); return(null); } #endif // Verify common interfaces are valid. OpenVR.GetGenericInterface(OpenVR.IVRCompositor_Version, ref error); if (error != EVRInitError.None) { initializedState = InitializedStates.InitializeFailure; ReportError(error); ReportGeneralErrors(); SteamVR_Events.Initialized.Send(false); return(null); } OpenVR.GetGenericInterface(OpenVR.IVROverlay_Version, ref error); if (error != EVRInitError.None) { initializedState = InitializedStates.InitializeFailure; ReportError(error); SteamVR_Events.Initialized.Send(false); return(null); } OpenVR.GetGenericInterface(OpenVR.IVRInput_Version, ref error); if (error != EVRInitError.None) { initializedState = InitializedStates.InitializeFailure; ReportError(error); SteamVR_Events.Initialized.Send(false); return(null); } settings = SteamVR_Settings.instance; #if !OPENVR_XR_API if (Application.isEditor) { IdentifyEditorApplication(); } SteamVR_Input.IdentifyActionsFile(); #endif if (SteamVR_Settings.instance.inputUpdateMode != SteamVR_UpdateModes.Nothing || SteamVR_Settings.instance.poseUpdateMode != SteamVR_UpdateModes.Nothing) { SteamVR_Input.Initialize(); #if UNITY_EDITOR if (SteamVR_Input.IsOpeningSetup()) { return(null); } #endif } } catch (System.Exception e) { Debug.LogError("<b>[SteamVR]</b> " + e); SteamVR_Events.Initialized.Send(false); return(null); } _enabled = true; initializedState = InitializedStates.InitializeSuccess; SteamVR_Events.Initialized.Send(true); return(new SteamVR()); }
private static SteamVR CreateInstance() { try { var error = EVRInitError.None; if (!SteamVR.usingNativeSupport) { string errorLog = "[SteamVR] Initialization failed. "; if (XRSettings.enabled == false) { errorLog += "VR may be disabled in player settings. Go to player settings in the editor and check the 'Virtual Reality Supported' checkbox'. "; } if (XRSettings.supportedDevices.Contains("OpenVR") == false) { errorLog += "OpenVR is not in your list of supported virtual reality SDKs. Add it to the list in player settings. "; } errorLog += "To force OpenVR initialization call SteamVR.Initialize(true). "; Debug.Log(errorLog); SteamVR_Events.Initialized.Send(false); return(null); } // Verify common interfaces are valid. OpenVR.GetGenericInterface(OpenVR.IVRCompositor_Version, ref error); if (error != EVRInitError.None) { ReportError(error); SteamVR_Events.Initialized.Send(false); return(null); } OpenVR.GetGenericInterface(OpenVR.IVROverlay_Version, ref error); if (error != EVRInitError.None) { ReportError(error); SteamVR_Events.Initialized.Send(false); return(null); } settings = SteamVR_Settings.instance; SteamVR_Input.PreInitialize(); IdentifyApplication(); SteamVR_Input.IdentifyActionsFile(); if (SteamVR_Settings.instance.inputUpdateMode != SteamVR_UpdateModes.Nothing || SteamVR_Settings.instance.poseUpdateMode != SteamVR_UpdateModes.Nothing) { SteamVR_Input.Initialize(); } } catch (System.Exception e) { Debug.LogError(e); SteamVR_Events.Initialized.Send(false); return(null); } _enabled = true; SteamVR_Events.Initialized.Send(true); return(new SteamVR()); }
private static SteamVR CreateInstance() { SteamVR.initializedState = SteamVR.InitializedStates.Initializing; try { EVRInitError evrinitError = EVRInitError.None; OpenVR.GetGenericInterface("IVRCompositor_022", ref evrinitError); OpenVR.Init(ref evrinitError, EVRApplicationType.VRApplication_Scene, ""); CVRSystem system = OpenVR.System; string manifestFile = SteamVR.GetManifestFile(); EVRApplicationError evrapplicationError = OpenVR.Applications.AddApplicationManifest(manifestFile, true); if (evrapplicationError != EVRApplicationError.None) { UnityEngine.Debug.LogError("<b>[SteamVR_Standalone]</b> Error adding vr manifest file: " + evrapplicationError.ToString()); } int id = Process.GetCurrentProcess().Id; OpenVR.Applications.IdentifyApplication((uint)id, SteamVR_Settings.instance.editorAppKey); UnityEngine.Debug.Log("Is HMD here? " + OpenVR.IsHmdPresent().ToString()); if (evrinitError != EVRInitError.None) { SteamVR.initializedState = SteamVR.InitializedStates.InitializeFailure; SteamVR.ReportError(evrinitError); SteamVR.ReportGeneralErrors(); SteamVR_Events.Initializing.Send(false); return(null); } OpenVR.GetGenericInterface("IVROverlay_021", ref evrinitError); if (evrinitError != EVRInitError.None) { SteamVR.initializedState = SteamVR.InitializedStates.InitializeFailure; SteamVR.ReportError(evrinitError); SteamVR_Events.Initializing.Send(false); return(null); } OpenVR.GetGenericInterface("IVRInput_007", ref evrinitError); if (evrinitError != EVRInitError.None) { SteamVR.initializedState = SteamVR.InitializedStates.InitializeFailure; SteamVR.ReportError(evrinitError); SteamVR_Events.Initializing.Send(false); return(null); } SteamVR.settings = SteamVR_Settings.instance; if (Application.isEditor) { SteamVR.IdentifyEditorApplication(true); } SteamVR_Input.IdentifyActionsFile(true); if (SteamVR_Settings.instance.inputUpdateMode != SteamVR_UpdateModes.Nothing || SteamVR_Settings.instance.poseUpdateMode != SteamVR_UpdateModes.Nothing) { SteamVR_Input.Initialize(false); } } catch (Exception arg) { UnityEngine.Debug.LogError("<b>[SteamVR_Standalone]</b> " + arg); SteamVR_Events.Initializing.Send(false); return(null); } SteamVR._enabled = true; SteamVR.initializedState = SteamVR.InitializedStates.InitializeSuccess; SteamVR_Events.Initializing.Send(true); return(new SteamVR()); }