An open API service indexing awesome lists of open source software.

https://github.com/aandreba/spirv-cross

High and low level bindigns to the SPIRV-Cross API
https://github.com/aandreba/spirv-cross

Last synced: about 1 year ago
JSON representation

High and low level bindigns to the SPIRV-Cross API

Awesome Lists containing this project

README

          

# spirv-cross
High and low level bindigns to the SPIRV-Cross API

## Example
```rust
use spirvcross::{
bytes_to_words,
compiler::{glsl::GlslCompiler, Compiler},
Result,
Context,
};

fn compile(bytes: &[u8]) -> Result<()> {
let words = bytes_to_words(bytes).unwrap();

let mut context = Context::new()?;
context.set_error_callback(|err| eprintln!("{}", err.to_string_lossy()));

let compiler = GlslCompiler::new(&mut context, &words)?
.vulkan_semantics(true)?;

println!("{}", compiler.compile()?);
return Ok(());
}
```

## Supported Targets
- Linux
- macOS
- Windows
- WebAssembly (WASI)
- Compiling to WebAssembly from a Windows machine currently doesn't work.
- Android
- Building for Android currently only works on Windows.