static void Update() { bool show = (!EditorPrefs.HasKey(ignore + buildTarget) && EditorUserBuildSettings.activeBuildTarget != recommended_BuildTarget) || (!EditorPrefs.HasKey(ignore + showUnitySplashScreen) && PlayerSettings.showUnitySplashScreen != recommended_ShowUnitySplashScreen) || (!EditorPrefs.HasKey(ignore + defaultIsFullScreen) && PlayerSettings.defaultIsFullScreen != recommended_DefaultIsFullScreen) || (!EditorPrefs.HasKey(ignore + defaultScreenSize) && (PlayerSettings.defaultScreenWidth != recommended_DefaultScreenWidth || PlayerSettings.defaultScreenHeight != recommended_DefaultScreenHeight)) || (!EditorPrefs.HasKey(ignore + runInBackground) && PlayerSettings.runInBackground != recommended_RunInBackground) || (!EditorPrefs.HasKey(ignore + displayResolutionDialog) && PlayerSettings.displayResolutionDialog != recommended_DisplayResolutionDialog) || (!EditorPrefs.HasKey(ignore + resizableWindow) && PlayerSettings.resizableWindow != recommended_ResizableWindow) || (!EditorPrefs.HasKey(ignore + fullscreenMode) && PlayerSettings.d3d11FullscreenMode != recommended_FullscreenMode) || (!EditorPrefs.HasKey(ignore + visibleInBackground) && PlayerSettings.visibleInBackground != recommended_VisibleInBackground) || (!EditorPrefs.HasKey(ignore + renderingPath) && PlayerSettings.renderingPath != recommended_RenderPath) || (!EditorPrefs.HasKey(ignore + colorSpace) && PlayerSettings.colorSpace != recommended_ColorSpace) || (!EditorPrefs.HasKey(ignore + gpuSkinning) && PlayerSettings.gpuSkinning != recommended_GpuSkinning) || (!EditorPrefs.HasKey(ignore + shadowCascades) && QualitySettings.shadowCascades != recommended_shadowCascades) || (!EditorPrefs.HasKey(ignore + pixelLightCount) && QualitySettings.pixelLightCount != recommended_pixelLightCount) || #if false (!EditorPrefs.HasKey(ignore + singlePassStereoRendering) && PlayerSettings.singlePassStereoRendering != recommended_SinglePassStereoRendering) || #endif forceShow; if (show) { window = GetWindow <TheLabRenderer_Settings>(true); window.minSize = new Vector2(375, 600); //window.title = "The Lab Renderer Settings"; } // Switch to native OpenVR support. var updated = false; if (!PlayerSettings.virtualRealitySupported) { PlayerSettings.virtualRealitySupported = true; updated = true; } /*var devices = UnityEditorInternal.VR.VREditor.GetVREnabledDevices(BuildTargetGroup.Standalone); * var hasOpenVR = false; * foreach (var device in devices) * if (device.ToLower() == "openvr") * hasOpenVR = true; * * if (!hasOpenVR) * { * string[] newDevices; * if (updated) * { * newDevices = new string[] { "OpenVR" }; * } * else * { * newDevices = new string[devices.Length + 1]; * for (int i = 0; i < devices.Length; i++) * newDevices[i] = devices[i]; * newDevices[devices.Length] = "OpenVR"; * updated = true; * } * UnityEditorInternal.VR.VREditor.SetVREnabledDevices(BuildTargetGroup.Standalone, newDevices); * }*/ if (updated) { Debug.Log("Switching to native OpenVR support."); } var dlls = new string[] { "Plugins/x86/openvr_api.dll", "Plugins/x86_64/openvr_api.dll" }; foreach (var path in dlls) { if (!File.Exists(Application.dataPath + "/" + path)) { continue; } if (AssetDatabase.DeleteAsset("Assets/" + path)) { Debug.Log("Deleting " + path); } else { Debug.Log(path + " in use; cannot delete. Please restart Unity to complete upgrade."); } } EditorApplication.update -= Update; }
static void Update() { bool show = (!EditorPrefs.HasKey(ignore + buildTarget) && EditorUserBuildSettings.activeBuildTarget != recommended_BuildTarget) || (!EditorPrefs.HasKey(ignore + showUnitySplashScreen) && PlayerSettings.showUnitySplashScreen != recommended_ShowUnitySplashScreen) || (!EditorPrefs.HasKey(ignore + defaultIsFullScreen) && PlayerSettings.defaultIsFullScreen != recommended_DefaultIsFullScreen) || (!EditorPrefs.HasKey(ignore + defaultScreenSize) && (PlayerSettings.defaultScreenWidth != recommended_DefaultScreenWidth || PlayerSettings.defaultScreenHeight != recommended_DefaultScreenHeight)) || (!EditorPrefs.HasKey(ignore + runInBackground) && PlayerSettings.runInBackground != recommended_RunInBackground) || (!EditorPrefs.HasKey(ignore + displayResolutionDialog) && PlayerSettings.displayResolutionDialog != recommended_DisplayResolutionDialog) || (!EditorPrefs.HasKey(ignore + resizableWindow) && PlayerSettings.resizableWindow != recommended_ResizableWindow) || (!EditorPrefs.HasKey(ignore + fullscreenMode) && PlayerSettings.d3d11FullscreenMode != recommended_FullscreenMode) || (!EditorPrefs.HasKey(ignore + visibleInBackground) && PlayerSettings.visibleInBackground != recommended_VisibleInBackground) || (!EditorPrefs.HasKey(ignore + renderingPath) && PlayerSettings.renderingPath != recommended_RenderPath) || (!EditorPrefs.HasKey(ignore + colorSpace) && PlayerSettings.colorSpace != recommended_ColorSpace) || (!EditorPrefs.HasKey(ignore + gpuSkinning) && PlayerSettings.gpuSkinning != recommended_GpuSkinning) || (!EditorPrefs.HasKey(ignore + shadowCascades) && QualitySettings.shadowCascades != recommended_shadowCascades) || (!EditorPrefs.HasKey(ignore + pixelLightCount) && QualitySettings.pixelLightCount != recommended_pixelLightCount) || #if false (!EditorPrefs.HasKey(ignore + singlePassStereoRendering) && PlayerSettings.singlePassStereoRendering != recommended_SinglePassStereoRendering) || #endif forceShow; if (show) { window = GetWindow<TheLabRenderer_Settings>(true); window.minSize = new Vector2(375, 600); //window.title = "The Lab Renderer Settings"; } // Switch to native OpenVR support. var updated = false; if (!PlayerSettings.virtualRealitySupported) { PlayerSettings.virtualRealitySupported = true; updated = true; } var devices = UnityEditorInternal.VR.VREditor.GetVREnabledDevices(BuildTargetGroup.Standalone); var hasOpenVR = false; foreach (var device in devices) if (device.ToLower() == "openvr") hasOpenVR = true; if (!hasOpenVR) { string[] newDevices; if (updated) { newDevices = new string[] { "OpenVR" }; } else { newDevices = new string[devices.Length + 1]; for (int i = 0; i < devices.Length; i++) newDevices[i] = devices[i]; newDevices[devices.Length] = "OpenVR"; updated = true; } UnityEditorInternal.VR.VREditor.SetVREnabledDevices(BuildTargetGroup.Standalone, newDevices); } if (updated) Debug.Log("Switching to native OpenVR support."); var dlls = new string[] { "Plugins/x86/openvr_api.dll", "Plugins/x86_64/openvr_api.dll" }; foreach (var path in dlls) { if (!File.Exists(Application.dataPath + "/" + path)) continue; if (AssetDatabase.DeleteAsset("Assets/" + path)) Debug.Log("Deleting " + path); else { Debug.Log(path + " in use; cannot delete. Please restart Unity to complete upgrade."); } } EditorApplication.update -= Update; }