Shaders: rust-gpu integration to compile shader nodes to WGSL (#3097)

* shaders: shader compilation setup

* nix: use rustc_codegen_spirv.so from nix

* shaders: codegen for per_pixel_adjust shader nodes

* shaders: disable nodes needing bool

* shaders: `#[repr(u32)]` some enums

* shaders: add lint ignores from rust-gpu

* shaders: fix node-macro tests

* gcore-shaders: toml cleanup

* shader-nodes feature: put rust-gpu to wgsl compile behind feature gate

* shaders: fix use TokenStream2

* shaders: allow providing shader externally

* Update iai runner in workflow

---------

Co-authored-by: Timon Schelling <me@timon.zip>
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
This commit is contained in:
Firestar99
2025-09-02 14:10:32 +00:00
committed by GitHub
co-authored by Timon Schelling Dennis Kobert
parent 083dfa5f49
commit a10103311e
21 changed files with 717 additions and 20 deletions
+2 -1
View File
@@ -11,9 +11,10 @@ repository = "https://github.com/GraphiteEditor/Graphite"
license = "Apache-2.0"
[features]
default = ["gpu"]
default = ["gpu", "shader-nodes"]
gpu = ["editor/gpu"]
native = []
shader-nodes = ["graphene-std/shader-nodes", "gpu"]
[lib]
crate-type = ["cdylib", "rlib"]