Skip to content

Instantly share code, notes, and snippets.

@elibroftw
Created May 24, 2020 18:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save elibroftw/149c230518e3e0d9af54d9c472c2ee84 to your computer and use it in GitHub Desktop.
Save elibroftw/149c230518e3e0d9af54d9c472c2ee84 to your computer and use it in GitHub Desktop.
A Unity Editor script that lets you build for all the necessary platforms at one go.
using System.Collections.Generic;
using UnityEditor;
using UnityEditor.Build.Reporting;
using UnityEngine;
public class BuildScript
{
[MenuItem("File/Build All")]
static void BuildAll()
{
var scenes = EditorBuildSettings.scenes;
BuildPipeline.BuildPlayer(scenes, "./Builds/Windows/Shift (Alpha).exe", BuildTarget.StandaloneWindows, BuildOptions.None);
BuildPipeline.BuildPlayer(scenes, "./Builds/Linux/Shift (Alpha).x86_64", BuildTarget.StandaloneLinux64, BuildOptions.None);
BuildPipeline.BuildPlayer(scenes, "./Builds/MacOSX.app/Shift (Alpha).x64", BuildTarget.StandaloneOSX, BuildOptions.None);
BuildPipeline.BuildPlayer(scenes, "./Builds/Web GL", BuildTarget.WebGL, BuildOptions.None);
}
[MenuItem("File/Build Windows")]
static void BuildWindows()
{
BuildPipeline.BuildPlayer(EditorBuildSettings.scenes, "./Builds/Windows/Shift (Alpha).exe", BuildTarget.StandaloneWindows, BuildOptions.None);
}
[MenuItem("File/Build Linux")]
static void BuildLinux()
{
BuildPipeline.BuildPlayer(EditorBuildSettings.scenes, "./Builds/Linux/Linux.x86_64", BuildTarget.StandaloneLinux64, BuildOptions.None);
}
[MenuItem("File/Build OS X")]
static void BuildOSX()
{
BuildPipeline.BuildPlayer(EditorBuildSettings.scenes, "./Builds/MacOSX.app/Mac.x64", BuildTarget.StandaloneOSX, BuildOptions.None);
}
[MenuItem("File/Build WebGL")]
static void BuildWebGL()
{
BuildPipeline.BuildPlayer(EditorBuildSettings.scenes, "./Builds/Web GL", BuildTarget.WebGL, BuildOptions.None);
}
static void PerformAssetBundleBuild()
{
BuildPipeline.BuildAssetBundles("../AssetBundles/", BuildAssetBundleOptions.ChunkBasedCompression, BuildTarget.StandaloneLinux64);
BuildPipeline.BuildAssetBundles("../AssetBundles/", BuildAssetBundleOptions.ChunkBasedCompression, BuildTarget.StandaloneWindows);
BuildPipeline.BuildAssetBundles("../AssetBundles/", BuildAssetBundleOptions.ChunkBasedCompression, BuildTarget.StandaloneOSX);
BuildPipeline.BuildAssetBundles("../AssetBundles/", BuildAssetBundleOptions.ChunkBasedCompression, BuildTarget.WebGL);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment