2 unstable releases
0.2.0-beta.1+irconverter-2.0.4 | Sep 26, 2024 |
---|---|
0.1.0+irconverter-1.1 | Jul 16, 2024 |
#595 in Graphics APIs
27KB
566 lines
🤘 Saxaboom runtime
saxaboom-runtime
provides the runtime repr(C)
definitions for structures and interop with the metal
crate needed to make use of the metallib
shaders generated by saxaboom
(bindings for Metal shader converter).
Usage
After compiling your DXIL
shaders to metallib
using saxaboom
, follow these steps in your render backend.
Add this to your Cargo.toml
:
[dependencies]
saxaboom-runtime = "0.2.0-beta.1"
Example to create a descriptor to a buffer:
use saxaboom_runtime::ffi::IRDescriptorTableEntry;
let gpu_address = 0; // TODO: Read from metal::Buffer::gpu_address()
let metadata = IRDescriptorTableEntry::buffer_metadata(todo!("Fill saxaboom_runtime::BufferView"));
let buffer_descriptor = IRDescriptorTableEntry::buffer(gpu_address, metadata);
Dependencies
~4.5MB
~39K SLoC