Shaders: add BufferStruct to support bool and enums (#3109)

* node-macro: modernize `node` macro

* node-macro: add `CrateIdent` struct containing resolved crate paths

* shaders: add trait `BufferStruct` and derive macro

* shaders: `gamma_correction` and `channel_mixer` gpu nodes

* shaders: `selective_color` gpu node

* shaders: `brightness_contrast_classic` gpu node

* shaders: append GPU to display name

* node-macro: fixup doc links

* shaders: consistently append " GPU" to all shader node names
This commit is contained in:
Firestar99
2025-09-05 18:32:41 +02:00
committed by GitHub
parent acd7ba38cc
commit f12b4da549
22 changed files with 788 additions and 118 deletions

View File

@@ -22,10 +22,14 @@ std = [
"glam/serde",
"half/std",
"half/serde",
"num-traits/std"
"num-traits/std",
"num_enum/std",
]
[dependencies]
# Local dependencies
node-macro = { workspace = true }
# Local std dependencies
dyn-any = { workspace = true, optional = true }
@@ -35,6 +39,8 @@ glam = { workspace = true }
half = { workspace = true, default-features = false }
num-derive = { workspace = true }
num-traits = { workspace = true }
num_enum = { workspace = true }
spirv-std = { workspace = true }
# Workspace std dependencies
serde = { workspace = true, optional = true }