mach/gpu-dawn
2022-02-13 04:51:34 +00:00
..
.github gpu-dawn: CI: prevent infinite loop of build -> release -> build -> release 2022-02-12 20:08:45 -07:00
libs gpu-dawn: update to latest Dawn version as of Dec 23, 2021 2021-12-24 01:53:33 -07:00
src gpu-dawn: update to latest glfw get/setUserPointer API (#154) 2022-01-09 20:58:18 -07:00
.gitattributes gpu-dawn: initialize subrepository 2022-02-12 15:21:16 -07:00
.gitignore gpu-dawn: initialize subrepository 2022-02-12 15:21:16 -07:00
.gitmodules gpu-dawn: add Dawn submodule to subrepository 2022-02-12 15:21:16 -07:00
build.zig gpu-dawn: update to latest binary release 2022-02-13 04:51:34 +00:00
LICENSE gpu-dawn: initialize subrepository 2022-02-12 15:21:16 -07:00
LICENSE-APACHE gpu-dawn: initialize subrepository 2022-02-12 15:21:16 -07:00
LICENSE-MIT gpu-dawn: initialize subrepository 2022-02-12 15:21:16 -07:00
README.md gpu-dawn: clarify README 2022-02-12 15:21:16 -07:00

mach/gpu-dawn, WebGPU/Dawn built with Zig Hexops logo

mach/gpu-dawn builds Dawn (Google's WebGPU implementation), requiring nothing more than zig and git to build and cross-compile static Dawn libraries for every OS.

  • No cmake
  • No ninja
  • No gn
  • No system dependencies (xcode, etc.)
  • Cross compilation supported out of the box
  • Builds a single static libdawn.a with everything you need.

This repository is a separate copy of the same library in the main Mach repository, and is automatically kept in sync, so that anyone can use this library in their own project / engine if they like!

Warning: Under heavy development!

This package is still under heavy development, Linux and macOS are working but Windows is not yet.

Zig Dawn/WebGPU interface

This package implements the the mach/gpu Zig interface which, for Zig developers, allows swapping between WebGPU implementations seamlessly similar to the std.mem.Allocator interface.

Generated code

Dawn itself relies on a fairly large amount of dependencies, generated code, etc. To avoid having any dependency on Google build tools, code generation, etc. we maintain a minor fork of Dawn which has generated code and third-party dependencies comitted.