Are we game yet?


Languages and tools for writing, compiling, and using shaders.


  • Create GLSL-compatible versions of structs with explicitly-initialized padding

  • A Shader generation tool from TOML to GLSL written in Rust

  • 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧

  • Provides a mechanism to lay out data into GPU buffers ensuring WGSL's memory layout requirements are met

  • Functionality for generating a Merkle-tree of a given text file with include references, replacing includes paths with a deterministic versioned identity, and also functionality for flattening include directives into a single file. The primary motivation is compiling shaders for various graphics APIs, but the the functionality can apply to a variety of source code parsing use cases.

  • Compile GLSL/HLSL/WGSL and inline SPIR-V right inside your crate.

  • Shader translation infrastructure

  • Rust bindings for shaderc

  • Light weight SPIR-V query utility for graphics.

  • Reflection API in rust for SPIR-V shader byte code, intended for Vulkan applications.


Do you know about a missing crate? Did you launch a new crate?

Please create a pull request or an issue on our GitHub!

Looking for a crate you can't find here? Try asking on the chat.