public static BuildTarget CalculateSelectedBuildTarget() { BuildTargetGroup targetGroup = EditorUserBuildSettings.selectedBuildTargetGroup; switch (targetGroup) { case BuildTargetGroup.Standalone: return(DesktopStandaloneBuildWindowExtension.GetBestStandaloneTarget(EditorUserBuildSettings.selectedStandaloneTarget)); case BuildTargetGroup.Facebook: return(EditorUserBuildSettings.selectedFacebookTarget); default: if (BuildPlatforms.instance == null) { throw new System.Exception("Build platforms are not initialized."); } BuildPlatform platform = BuildPlatforms.instance.BuildPlatformFromTargetGroup(targetGroup); if (platform == null) { throw new System.Exception("Could not find build platform for target group " + targetGroup); } return(platform.defaultTarget); } }
internal static BuildTarget CalculateSelectedBuildTarget(NamedBuildTarget namedBuildTarget) { if (namedBuildTarget.ToBuildTargetGroup() == BuildTargetGroup.Standalone) { BuildTarget target = EditorUserBuildSettings.selectedStandaloneTarget; if (target == BuildTarget.NoTarget) { target = EditorUserBuildSettings.activeBuildTarget; } return(DesktopStandaloneBuildWindowExtension.GetBestStandaloneTarget(target)); } else { if (BuildPlatforms.instance == null) { throw new System.Exception("Build platforms are not initialized."); } BuildPlatform platform = BuildPlatforms.instance.BuildPlatformFromNamedBuildTarget(namedBuildTarget); if (platform == null) { throw new System.Exception("Could not find build platform for target group " + namedBuildTarget.TargetName); } return(platform.defaultTarget); } }
public static BuildTarget CalculateSelectedBuildTarget() { BuildTargetGroup selectedBuildTargetGroup = EditorUserBuildSettings.selectedBuildTargetGroup; BuildTarget result; if (selectedBuildTargetGroup != BuildTargetGroup.Standalone) { if (selectedBuildTargetGroup != BuildTargetGroup.Facebook) { if (BuildPlatforms.instance == null) { throw new Exception("Build platforms are not initialized."); } BuildPlatform buildPlatform = BuildPlatforms.instance.BuildPlatformFromTargetGroup(selectedBuildTargetGroup); if (buildPlatform == null) { throw new Exception("Could not find build platform for target group " + selectedBuildTargetGroup); } result = buildPlatform.defaultTarget; } else { result = EditorUserBuildSettings.selectedFacebookTarget; } } else { result = DesktopStandaloneBuildWindowExtension.GetBestStandaloneTarget(EditorUserBuildSettings.selectedStandaloneTarget); } return(result); }
public override void CheckError() { var currentParams = P.GetCurrentParams(); var lst = new List <string>(32); if (currentParams.scriptingBackend == ScriptingImplementation.IL2CPP) { var ss = UnityEditorModulesModuleManager.GetTargetStringFrom(UnityEditorEditorUserBuildSettings.activeBuildTargetGroup, EditorUserBuildSettings.activeBuildTarget); object obj = UnityEditorModulesModuleManager.GetBuildWindowExtension(ss); var ext = new DesktopStandaloneBuildWindowExtension(obj); var mes = ext.GetCannotBuildIl2CppPlayerInCurrentSetupError(); if (!mes.IsEmpty()) { lst.Add(mes); } } errorMessages = lst.ToArray(); }
public static bool BuildTargetSupportsRenderer(BuildPlatform platform, GraphicsDeviceType type) { BuildTarget buildTarget = platform.defaultTarget; if (platform.targetGroup == BuildTargetGroup.Standalone) { buildTarget = DesktopStandaloneBuildWindowExtension.GetBestStandaloneTarget(buildTarget); } foreach (int var in GetRenderList(buildTarget)) { if ((GraphicsDeviceType)var == type) { return(true); } } return(false); }
public override void ShowPlatformBuildOptions() { BuildTarget bestStandaloneTarget = DesktopStandaloneBuildWindowExtension.GetBestStandaloneTarget(EditorUserBuildSettings.selectedStandaloneTarget); BuildTarget buildTarget = EditorUserBuildSettings.selectedStandaloneTarget; int num = Math.Max(0, Array.IndexOf <BuildTarget>(this.m_StandaloneSubtargets, DesktopStandaloneBuildWindowExtension.DefaultTargetForPlatform(bestStandaloneTarget))); int num2 = EditorGUILayout.Popup(this.m_StandaloneTarget, num, this.m_StandaloneSubtargetStrings, new GUILayoutOption[0]); if (num2 == num) { Dictionary <GUIContent, BuildTarget> architecturesForPlatform = DesktopStandaloneBuildWindowExtension.GetArchitecturesForPlatform(bestStandaloneTarget); if (architecturesForPlatform != null) { GUIContent[] array = new List <GUIContent>(architecturesForPlatform.Keys).ToArray(); int num3 = 0; if (num2 == num) { foreach (KeyValuePair <GUIContent, BuildTarget> current in architecturesForPlatform) { if (current.Value == bestStandaloneTarget) { num3 = Math.Max(0, Array.IndexOf <GUIContent>(array, current.Key)); break; } } } num3 = EditorGUILayout.Popup(this.m_Architecture, num3, array, new GUILayoutOption[0]); buildTarget = architecturesForPlatform[array[num3]]; } } else { buildTarget = this.m_StandaloneSubtargets[num2]; } if (buildTarget != EditorUserBuildSettings.selectedStandaloneTarget) { EditorUserBuildSettings.selectedStandaloneTarget = buildTarget; GUIUtility.ExitGUI(); } this.ShowIl2CppErrorIfNeeded(); }