rspirv is a Rust-based parser, builder, and disassembler for SPIR-V, the intermediate binary format used in Vulkan and OpenCL for shaders and compute kernels. It’s part of the gfx-rs ecosystem, a suite of graphics tools aiming to provide cross-platform rendering capabilities in Rust. rspirv enables manipulation and inspection of SPIR-V modules, which is useful in shader compilers, graphics drivers, and development tools for low-level GPU programming. The library strictly follows the SPIR-V specification and is used in projects that need to generate, analyze, or modify shaders dynamically.

Features

  • Parses SPIR-V binary modules into structured Rust representations
  • Builds valid SPIR-V modules programmatically from Rust code
  • Disassembler for converting SPIR-V binaries to human-readable form
  • Strictly follows SPIR-V specification from Khronos
  • Useful in graphics compilers, shader tools, and analysis tools
  • No_std support for embedded and bare-metal systems
  • Supports extensions and capabilities defined by the spec
  • Works with Vulkan, OpenCL, and WebGPU shader pipelines
  • Active development as part of the gfx-rs project ecosystem

Project Samples

Project Activity

See All Activity >