After about a year and a half of work, Mach v0.2 has just been released. Mach aims to be a Zig game engine & graphics toolkit for building high-performance, truly cross-platform, robust & modular games, visualizations, and desktop/mobile GUI apps.
For Mach engine, we're maintaining an ecosystem of C libraries packaged up with the new experimental Zig package manager. Whether you use Zig the language, or just its build system to build C/C++ applications, you may find this overview of our ecosystem informative.
With Zig v0.11 will come several changes to the std.build API. We've just updated Mach to the latest nightly Zig version, and wanted to provide some tips on how to update your own Zig code.
Unlike other toolchains, Zig enables many more safety checks by default. We've caught undefined behavior in GLFW, the DirectX Shader Comppiler, and Google Chrome's WebGPU implementation as a result. But debugging these situations can be a bit tricky sometimes, so here's a walkthrough of how to debug such an error using Zig and LLDB.
A 700+ commit complete rewrite of mach/gpu (the WebGPU interface for Zig) has been completed, enabling seamless use of Dawn (Google Chrome's WebGPU implementation) for native Zig applications.