We’ve started an effort to define a community extension to wgsl.
By sharing the effort, we hope to get a cleaner set of features and a better developer experience for writing shaders via tools for IDE support, syntax highlighting, etc. A community standard is also critical to enable an ecosystem of wgsl packages on npm and crates.io.
We’re starting by looking at features like import
, #define
, #if
, etc. and the associated tooling in TypeScript and Rust.
Would you help us define what’s needed for a project like babylon.js? I see some interesting stuff in the babylon.js repo like #include<morphTargetsVertexDeclaration>[0..maxSimultaneousMorphTargets]
, #define CUSTOM_VERTEX_MAIN_END
, etc.
See here for more details of the current discussions.