private void OnGUI() { GUILayout.Space(20); GUIStyle firstLevelStyle = new GUIStyle(GUI.skin.label); firstLevelStyle.fontStyle = FontStyle.Bold; EditorGUILayout.LabelField("Quality settings :", firstLevelStyle); qualityLevel = (QualityLevel)EditorGUILayout.EnumPopup("", qualityLevel); GUILayout.Space(20); if (qualityLevel == QualityLevel.Low) { QualitySettings.antiAliasing = 0; QualitySettings.shadowResolution = ShadowResolution.Low; } else if (qualityLevel == QualityLevel.Middle) { QualitySettings.antiAliasing = 0; QualitySettings.shadowResolution = ShadowResolution.Medium; } else if (qualityLevel == QualityLevel.High) { QualitySettings.antiAliasing = 0; QualitySettings.shadowResolution = ShadowResolution.High; } EditorGUILayout.LabelField("HMD type :", firstLevelStyle); hmdType = (HMD_TYPE)EditorGUILayout.EnumPopup("", hmdType); GUILayout.Space(20); EditorGUILayout.LabelField("Target Architectures :", firstLevelStyle); targetArchitectures = (Target_Architectures)EditorGUILayout.EnumPopup("", targetArchitectures); GUILayout.Space(20); EditorGUILayout.LabelField("Player settings :", firstLevelStyle); EditorGUILayout.LabelField("Orientation : LandscapeLeft"); EditorGUILayout.LabelField("GraphicsAPIs : OpenglEs2.0"); EditorGUILayout.LabelField("V Sync Count : Don't Sync"); EditorGUILayout.LabelField("MultiThreadRendering : Disable "); EditorGUILayout.LabelField("Blit Type : Never"); EditorGUILayout.LabelField("Use 32-bit Display Buffer"); if (GUILayout.Button("Confirm", GUILayout.Width(100), GUILayout.Height(20))) { PlayerSettings.defaultInterfaceOrientation = UIOrientation.LandscapeLeft; PlayerSettings.SetUseDefaultGraphicsAPIs(BuildTarget.Android, false); PlayerSettings.SetGraphicsAPIs(BuildTarget.Android, new UnityEngine.Rendering.GraphicsDeviceType[] { UnityEngine.Rendering.GraphicsDeviceType.OpenGLES2 }); PlayerSettings.use32BitDisplayBuffer = true; #if UNITY_2017_4_OR_NEWER PlayerSettings.SetMobileMTRendering(BuildTargetGroup.Android, false); #else PlayerSettings.mobileMTRendering = false; #endif #if UNITY_2017_4_OR_NEWER PlayerSettings.Android.blitType = AndroidBlitType.Never; PlayerSettings.Android.targetSdkVersion = AndroidSdkVersions.AndroidApiLevel22; #endif #if UNITY_2018_4_OR_NEWER PlayerSettings.Android.startInFullscreen = true; if (targetArchitectures == Target_Architectures.ARMV7) { PlayerSettings.Android.targetArchitectures = AndroidArchitecture.ARMv7; ReleaseARM64So(false); } else if (targetArchitectures == Target_Architectures.ARMV7_AND_ARM64) { PlayerSettings.Android.targetArchitectures = AndroidArchitecture.All; ReleaseARM64So(true); } #endif PlayerSettings.Android.minSdkVersion = AndroidSdkVersions.AndroidApiLevel21; PlayerSettings.SetScriptingDefineSymbolsForGroup(BuildTargetGroup.Android, "NIBIRU_" + hmdType.ToString()); if (hmdType == HMD_TYPE.AR) { PlayerSettings.productName = PRODUCT_NAME_AR; } else if (hmdType == HMD_TYPE.VR) { PlayerSettings.productName = PRODUCT_NAME_VR; } #if UNITY_2017_1_OR_NEWER PlayerSettings.SetApplicationIdentifier(BuildTargetGroup.Android, PACKAGE_NAME_XR); #else PlayerSettings.bundleIdentifier = PACKAGE_NAME_XR; #endif QualitySettings.pixelLightCount = 1; QualitySettings.masterTextureLimit = 0; QualitySettings.anisotropicFiltering = AnisotropicFiltering.ForceEnable; #if UNITY_5_5_OR_NEWER QualitySettings.shadows = ShadowQuality.Disable; #endif // Don't Sync QualitySettings.vSyncCount = 0; SaveHmdType(); Close(); } }
void RefreshTargetArchitectures() { targetArchitectures = IsARM64Enabled() ? Target_Architectures.ARMV7_AND_ARM64 : Target_Architectures.ARMV7; }