# zig-gamedev
**Repository Path**: masx200/zig-gamedev
## Basic Information
- **Project Name**: zig-gamedev
- **Description**: https://github.com/zig-gamedev/zig-gamedev
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2026-01-04
- **Last Updated**: 2026-01-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# [zig-gamedev](https://github.com/zig-gamedev) dev repo
The original repo spawned in July 2021 by [Michal Ziulek](https://github.com/michal-z). This is the main development repo for the [zig-gamedev libraries](https://github.com/zig-gamedev#libraries) and [sample applications](#sample-applications-native-wgpu).
## Getting Started
- Download and install [Git LFS](https://git-lfs.com)
- Download and install [anyzig](https://github.com/marler8997/anyzig) (recommended) or get a compatible Zig compiler by some other means.
- Clone this repo `git clone git@github.com:zig-gamedev/zig-gamedev.git && cd zig-gamedev`
Build and run a sample app:
```sh
zig build physically_based_rendering_wgpu-run
```
Get a list of all available build steps for the native target:
```sh
zig build -l
```
Get a list of all available build steps for web (using emscripten):
```sh
zig build -l -Dtarget=wasm32-emscripten
```
## Sample applications (native wgpu)
Some of the sample applications are listed below. More can be found in [samples](samples/) directory.
1. [physically based rendering (wgpu)](samples/physically_based_rendering_wgpu): This sample implements physically-based rendering (PBR) and image-based lighting (IBL) to achive realistic looking rendering results.
`zig build physically_based_rendering_wgpu-run`
1. [audio experiments (wgpu)](samples/audio_experiments_wgpu): This sample lets the user experiment with audio and observe data that feeds the hardware.
`zig build audio_experiments_wgpu-run`
1. [bullet physics test (wgpu)](samples/bullet_physics_test_wgpu): This sample application demonstrates how to use full 3D physics engine in your Zig programs.
`zig build bullet_physics_test_wgpu-run`
1. [procedural mesh (wgpu)](samples/procedural_mesh_wgpu): This sample shows how to efficiently draw several procedurally generated meshes.
`zig build procedural_mesh_wgpu-run`
1. [gui test (wgpu)](samples/gui_test_wgpu): This sample shows how to use our [zgui](libs/zgui) library.
`zig build gui_test_wgpu-run`
## Sample applications (DirectX 12)
Some of the sample applications are listed below. More can be found in [samples](samples/) directory. They can be built and run on Windows and Linux (Wine + VKD3D-Proton 2.8+):
1. [bindless](samples/bindless): This sample implements physically based shading and image based lighting to achieve realistic looking rendering results. It uses bindless textures and HLSL 6.6 dynamic resources.
`zig build bindless-run`
1. [rasterization](samples/rasterization): This sample application shows how GPU rasterizes triangles in slow motion.
`zig build rasterization-run`
1. [simple raytracer](samples/simple_raytracer): This sample implements basic hybrid renderer. It uses rasterization to resolve primary rays and raytracing (DXR) for shadow rays.
`zig build simple_raytracer-run`
1. [mesh shader test](samples/mesh_shader_test): This sample shows how to use DirectX 12 Mesh Shader.
`zig build mesh_shader_test-run`
