You are viewing an older version of the site (Mach v0.1), see the latest version here.
Mach is still early stages - see what we have today and stay tuned.

Cross-platform graphics in ~60 seconds

git clone --recursive https://github.com/hexops/mach-examples
cd mach-examples/
zig build run-boids
Cross-platform graphics, a unified shader language & compute shaders.
Requires zig 0.11.x | known issues

All you need is zig, git, and curl.

No more installing tools & dependencies to get started

Mach builds everything using the Zig C/C++ compiler: GLFW, Google Chrome's WebGPU implementation, even the DirectX Shader Compiler.

Prebuilt binaries are used for WebGPU so you don't even have to wait for compilation - just add `-Ddawn-from-source=true` for a 100% from-source build.

Built with love, hard work, and Zig

Effortless cross-compilation at your fingertips

Mach is written in Zig, a successor to C with blazing fast performance, compile-time code execution, safety, and in the future hot code swapping.

$ zig build -Dtarget=x86_64-windows
$ zig build -Dtarget=x86_64-linux
$ zig build -Dtarget=x86_64-macos.12
$ zig build -Dtarget=aarch64-macos.12

⚠ Mach is early stages

What we do have is nice
and things are improving rapidly,
but we're not at Mach 1.0 yet,
we're missing lots - stay tuned.

  • Windows, Linux, and macOS support
  • Graphics API (examples)
    • Metal, Vulkan, DirectX 12 & OpenGL fallback (WebGPU)
    • Unified shader language (WGSL)
    • Compute shaders
    • (lacking) Documentation
  • Input (GLFW)
  • (experimental) Entity Component System

What's next? (Lightning talk)

Broadcast at the first ever European Zig meetup in Milan, Italy.

Building tools & libraries to benefit all

Prefer Unity/Unreal? Not using Zig? We plan for our work to be useful for you too.

Our glfw bindings found lurking undefined behavior that went unnoticed for years. Use mach/gpu-dawn from your language of choice to build Google Chrome's WebGPU implementation via Zig (no cmake/ninja/gn/etc) into a single static library, with cross-compilation & prebuilt binaries.

These are all small potatoes. In the future, tooling is where we'll really contribute.

Open source, always & forever

Apache or MIT licensed, at your choosing.

FOSS is our roots, we've been playing and developing FOSS games & engines for 13+ years.

Contributors

Mach is created primarily by BDFL @slimsag, but we're very open to contributors! And since our projects are useful outside of Mach itself, there are already a few:

Sponsors

Sponsor us on GitHub to help Mach engine, zigmonthly.org, and our other work. All of these fine people contribute financially:

Follow along

Major developments can be followed on our devlog and the @machengine Twitter.

Get involved

Checkout our GitHub and join us on Matrix chat!