50 lines
1.2 KiB
C#
50 lines
1.2 KiB
C#
using UnityEditor;
|
|
using UnityEditor.Build.Reporting;
|
|
using System.Linq;
|
|
|
|
public static class BuildScript
|
|
{
|
|
public static void Windows()
|
|
{
|
|
Build(BuildTarget.StandaloneWindows64, "Builds/Windows");
|
|
}
|
|
|
|
public static void Android()
|
|
{
|
|
Build(BuildTarget.Android, "Builds/Android");
|
|
}
|
|
|
|
public static void Mac()
|
|
{
|
|
Build(BuildTarget.StandaloneOSX, "Builds/Mac");
|
|
}
|
|
|
|
public static void iOS()
|
|
{
|
|
Build(BuildTarget.iOS, "Builds/iOS");
|
|
}
|
|
|
|
private static void Build(BuildTarget target, string outputPath)
|
|
{
|
|
UnityEngine.Debug.Log("### Inside Unity ###");
|
|
UnityEngine.Debug.Log(target);
|
|
UnityEngine.Debug.Log(outputPath);
|
|
|
|
var scenes = EditorBuildSettings.scenes
|
|
.Where(s => s.enabled)
|
|
.Select(s => s.path)
|
|
.ToArray();
|
|
|
|
var report = BuildPipeline.BuildPlayer(
|
|
scenes,
|
|
outputPath,
|
|
target,
|
|
BuildOptions.None
|
|
);
|
|
|
|
if (report.summary.result != BuildResult.Succeeded)
|
|
{
|
|
throw new System.Exception("Build failed: " + report.summary.result);
|
|
}
|
|
}
|
|
} |