Rework Shader API for public consumption. - [ ] ~Use a result builder for shader construction~ - [ ] Attempt to prevent instance dependent build objects from being used on other shader instances at the compile stage. - These objects include custom uniforms, buffer attachments, and buffer destinations. - Type constraints? - [ ] Give shaders a unique identifier that will allow for static caching of generated/built shaders. - [ ] Give shaders the ability to be changed at runtime and auto recompile, even while being used. - Possibly with a `MutableXXXXXShader` type variant as these won't be cacheable. - [ ] Fully document and include examples as markdown sheets in SwiftDocC library.
Rework Shader API for public consumption.
Use a result builder for shader constructionMutableXXXXXShadertype variant as these won't be cacheable.