NebulaBuild
Builds the Unity player for workers and clients, exports service data, and publishes the standalone .NET orchestrator and gateway beside it.
Nebula.Editor · Packages/com.1by3.nebula/Editor/NebulaBuild.cspublic static class NebulaBuildBuilds the Unity player for workers and clients, exports service data, and publishes the standalone .NET orchestrator and gateway beside it. Requires the .NET 10 SDK. Menu: Nebula > Build.
- Windows player:
Builds/Win64/Nebula.exe- the local mesh, bots and the human client. - Linux player:
Builds/Linux64Player/Nebula.x86_64- the human client on Linux desktops. - Linux dedicated server:
Builds/Linux64/Nebula.x86_64- the worker simulation on cloud VMs.
Batchmode: Unity -batchmode -quit -projectPath . -executeMethod Nebula.Editor.NebulaBuild.BuildWindowsBatch, ...NebulaBuild.BuildLinuxBatch, ...NebulaBuild.BuildMacBatch, ...NebulaBuild.BuildLinuxServerBatch or ...NebulaBuild.BuildWebBatch.
Properties
ProjectRoot
public static string ProjectRoot { get; }BuildDir
public static string BuildDir { get; }ExecutablePath
public static string ExecutablePath { get; }LinuxBuildDir
public static string LinuxBuildDir { get; }LinuxExecutablePath
public static string LinuxExecutablePath { get; }LinuxPlayerBuildDir
public static string LinuxPlayerBuildDir { get; }LinuxPlayerExecutablePath
public static string LinuxPlayerExecutablePath { get; }MacBuildDir
public static string MacBuildDir { get; }MacExecutablePath
public static string MacExecutablePath { get; }WebBuildDir
public static string WebBuildDir { get; }Methods
BuildWindowsMenu
[MenuItem("Nebula/Build/Windows Player (Mono, development)", priority = 0)]
public static void BuildWindowsMenu();BuildLinuxMenu
[MenuItem("Nebula/Build/Linux Player (Mono, development)", priority = 1)]
public static void BuildLinuxMenu();BuildLinuxServerMenu
[MenuItem("Nebula/Build/Linux Dedicated Server (per NebulaConfig: Mono, development by default)", priority = 2)]
public static void BuildLinuxServerMenu();BuildWindows
public static BuildReport BuildWindows();BuildLinux
public static BuildReport BuildLinux();Linux player (Builds/Linux64Player/Nebula.x86_64): the client for Linux desktops. It has its own folder so it never overwrites the dedicated server in Builds/Linux64.
BuildLinuxServer
public static BuildReport BuildLinuxServer();BuildMac
public static BuildReport BuildMac();macOS player (Builds/MacOS/Nebula.app): what nebula start runs on a Mac.
BuildWebMenu
[MenuItem("Nebula/Build/Web Client", priority = 3)]
public static void BuildWebMenu();BuildWeb
public static BuildReport BuildWeb();Web client (Builds/Web): a browser build that reaches the gateway over WebRTC. The standalone gateway serves it from a Web folder beside its own build folder, so nebula start puts it at http://127.0.0.1:7000/. The build is gzip-compressed, because browsers accept brotli only over HTTPS.
BuildWebBatch
public static void BuildWebBatch();Entry point for batchmode web client builds; exits with a non-zero code on failure.
BuildWindowsBatch
public static void BuildWindowsBatch();Entry point for batchmode builds; exits with a non-zero code on failure.
BuildLinuxBatch
public static void BuildLinuxBatch();Entry point for batchmode Linux player builds; exits with a non-zero code on failure.
BuildLinuxServerBatch
public static void BuildLinuxServerBatch();Entry point for batchmode Linux server builds; exits with a non-zero code on failure.
BuildMacBatch
public static void BuildMacBatch();Entry point for batchmode macOS player builds; exits with a non-zero code on failure.
ContainerEditor
Inspector for Container: the default fields plus a button that refits the box to the object's bounds.
NebulaMesh
Developer loop: launch a local mesh from the last build (the standalone orchestrator, which hosts the control plane and starts the gateway and N workers), then press Play in the Editor as a client.