rspirv-ext

Crates.iorspirv-ext
lib.rsrspirv-ext
version0.1.1
created_at2025-05-09 10:05:02.722688+00
updated_at2025-08-31 15:45:45.335856+00
descriptionErgonomic SPIR-V extension bindings for rspirv
homepage
repositoryhttps://github.com/wingertge/rspirv-ext
max_upload_size
id1666872
size561,967
Genna Wingert (wingertge)

documentation

README

rspirv-ext

An extension to rspirv, adding builder methods for several SPIR-V extensions. Uses a heavily stripped down and modified version of rspirv-autogen.

Documentation

In total rspirv-ext APIs contains:

The Khronos SPIR-V JSON grammar is leveraged to generate parts of the source code using rspirv-autogen-ext.

Please see the links to docs.rs for detailed documentation.

Status

Only includes four of the extensions right now and mainly targets the Shader.DebugInfo.100 extension, since it's a lot more complex than most.

Directory Organization

There are multiple crates inside this repo:

  • autogen/: Crate to generate various Rust code snippets used in the modules in src/spirv/ and src/dr/, from the extension's JSON grammar. If you are not modifying src/spirv/ or src/dr/, you don't need to care about this directory.
  • src/: The rspirv-ext crate.

Build

git clone https://github.com/wingertge/rspirv-ext.git /path/to/rspirv-ext

If you just want to compile and use the rspirv-ext crate:

cd /path/to/rspirv-ext
cargo build

If you want to refresh the rspirv-ext crate with new code snippets generated from SPIR-V's JSON grammar:

cd /path/to/rspirv-ext
# Clone the SPIRV-Headers repo
git submodule update --init
cargo run -p rspirv-autogen-ext
Commit count: 7

cargo fmt