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.| devlog.hexops.com
This is a story about the messy state of Microsoft’s DirectX shader compiler, and trying to wrangle it into a nicer experience for game developers. In some respects, building the DXC compiler better than how Microsoft does.| devlog.hexops.com
Today we're announcing Mach nominated Zig versions, a sweet-spot between stable Zig and nightly Zig which offers a different balance of latest-and-greatest features and fixes, and less of a moving target.| devlog.hexops.com
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.| devlog.hexops.com
As we've been building Mach engine, we've been using a neat little pattern in Zig that enables writing flag sets more nicely in Zig than in other languages. Here's a brief explainer.| devlog.hexops.com
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.| devlog.hexops.com
In this series we build Mach Engine's Entity Component System from first principles in the Zig programming language. In part one we looked at how ECS relates to data oriented design, in part two we look at database design and how it relates to ECS as we begin writing our implementation.| devlog.hexops.com
Five months ago we announced some of our vision for Mach & the future of graphics with Zig. Today we've reached Mach v0.1 with over 1,100 commits.| devlog.hexops.com
If you just got started with Zig, you might quickly want to use a hashmap. Zig provides good defaults, with a lot of customization options.| devlog.hexops.com
In this multi-part series we'll build the Entity Component System used in Mach engine in the Zig programming language from first principles (asking what an ECS is and walking through what problems it solves) all the way to writing an implementation in a low-level programming language. The only thing you need to follow along is some programming experience and a desire to learn.| devlog.hexops.com