Skip to main content

Installation

Voltage is built from source. There is no installer yet; the editor is a single executable that the .NET SDK produces in a couple of minutes.

Prerequisites​

  • .NET 8 SDK or newer.
  • Windows, macOS or Linux with an OpenGL 3 capable GPU driver. The editor and games use MonoGame DesktopGL (SDL2 + OpenGL).
  • To publish games as NativeAOT binaries, the platform's native toolchain: on Windows the Visual Studio C++ build tools, on Linux clang and zlib1g-dev, on macOS the Xcode command-line tools.

Build the editor​

git clone https://github.com/VoltageEngine/VoltageEngine.git
cd VoltageEngine
dotnet build Voltage.Editor/Voltage.Editor.csproj -c Editor-Debug

The executable lands in Voltage.Editor/bin/Editor-Debug/win-x64/Voltage.Editor.exe (the runtime identifier folder matches your platform). Editor-Release builds an optimized editor to bin/Editor-Release.

The Editor-* configurations define the EDITOR preprocessor symbol, which adds the inspector, serialization manager and hot-reload surfaces to the engine. Plain Debug and Release build the engine the way a published game sees it.

Repeated builds on macOS​

Close the editor, then run the bounded build helper from the engine folder:

./tools/build-editor-macos.sh

It selects Intel or Apple Silicon automatically, permits one helper build per checkout, uses one MSBuild worker, and disables persistent compiler/build servers. Use --no-restore after dependencies have been restored, or -c Editor-Release for the optimized editor. It refuses to replace binaries while an editor is running and does not terminate any application. If a build is forcibly interrupted and leaves its lock directory, verify that the build has stopped before removing the directory reported by the helper.

Normal macOS builds also default to non-shared compilation and sequential project-reference builds. These settings reduce build concurrency and background compiler retention; they do not cap the editor's runtime heap or diagnose a system restart. If the entire Mac restarts, inspect the macOS panic report rather than assuming a managed out-of-memory exception. Follow Apple's unexpected-restart troubleshooting if the problem persists.

Run it​

Start the editor with no arguments to get the project picker, or pass a .voltage file to open a project directly:

Voltage.Editor/bin/Editor-Debug/win-x64/Voltage.Editor.exe C:/Games/MyGame/MyGame.voltage

File > New Project creates a fresh game project with the standard folder layout, including its own .csproj that references the engine assemblies the editor copies into EngineLibs/.

The command-line client​

Voltage.Cli builds to voltage, a client for the Editor Gateway that lets scripts and AI agents drive a running editor:

dotnet build Voltage.Cli/Voltage.Cli.csproj -c Editor-Debug
dotnet Voltage.Cli/bin/Editor-Debug/net8.0/voltage.dll status

Next​

Follow Your First Game to create a project, a scene and a component.