Rlsl - Rust Like Shading Language
What is Rlsl?
Rlsl targets the logical addressing model of SPIR-V.
The Logical addressing model means pointers are abstract, having no physical size or numeric value. In this mode, pointers can only be created from existing objects, and they cannot be stored into an object, unless additional capabilities, e.g., VariablePointers, are declared to add such functionality.
- Supports cargo
- Multiple entry points can be defined in the same SPIR-V module
- Currently supports Vertex, Fragment and Compute shaders
- Shader code can run on the CPU because rlsl is a subset of Rust
- Reflection TODO
- Support library for interop between Rust and rlsl for uniforms (std140, std420) TODO
RUSTC=rlsl cargo build
How to install rlsl
Not ready to be used. Anything might happen
git clone https://github.com/MaikKlein/rlsl.git
Make sure you have both rustup and xargo installed.
cargo +rlsl test
Want to help?
The project currently does not accept any contributions yet.
- Rlsl can not be easily built by anyone
- There is no documentation
- Debugging tools are almost non existent
- There is no infrastructure for testing
- No guide level explanation for contributions
Rlsl will start to accept contributions after those issues are properly addressed.
Want to chat? Join us on gitter.
Feel free to open an issue at any time.