Beispiel #1
0
 public static bool Validate(BuildScript buildScript)
 {
     if (buildScript == null)
     {
         DebugMessege.Log("Cannot build without a BuildScript.", DebugLevel.ERROR);
         return(false);
     }
     if (string.IsNullOrEmpty(buildScript.GameName))
     {
         DebugMessege.Log("GameName cannot be null or empty.", DebugLevel.ERROR);
         return(false);
     }
     if (buildScript.GameVersionWriterConfig.Enabled && string.IsNullOrEmpty(buildScript.GameVersionWriterConfig.Namespace))
     {
         DebugMessege.Log("GameVersionWriter namespace cannot be null or empty.", DebugLevel.ERROR);
         return(false);
     }
     return(true);
 }
Beispiel #2
0
        public static void BuildUWP()
        {
            var buildScript = GetBuildScript();

            if (!Validate(buildScript))
            {
                return;
            }

            //Version
            if (!UnityEditorInternal.InternalEditorUtility.isHumanControllingUs)
            {
                Version(out var version, out _);
                PlayerSettings.bundleVersion = version;
                if (System.Version.TryParse(version, out var iVersion))
                {
                    PlayerSettings.WSA.packageVersion = iVersion;
                }
                else
                {
                    DebugMessege.Log("Failed to parse game version.", DebugLevel.ERROR);
                }
            }


            //Backend
            //Always IL2CPP
            //PlayerSettings.SetScriptingBackend(BuildTargetGroup.WSA, buildScript.BuildUWP.ScriptingBackend);

            //Options
            var buildOptions = new BuildPlayerOptions
            {
                scenes           = buildScript.BuildUWP.GetScenes(),
                locationPathName = "Build/UWP/",
                target           = BuildTarget.WSAPlayer,
                options          = GetOptions(buildScript.BuildUWP)
            };

            ProcessReport(BuildPipeline.BuildPlayer(buildOptions));
        }