Runtime Parsing for Uber-Shaders
- Dominant language
- JavaScript
- Stars
- 2.3k
- Forks
- 83
- PR merge metrics
- No merged PRs in 30d
Description
A lot of 3D engines have 'chunking' systems that forms a single uber shader with lights, normal mapping, etc. Most of them just lead to huge shader source with a crap ton of `#ifdefs` (see ThreeJS).
Would it be possible to require and use glslify (or its internals) at runtime, for a custom chunking system? The readme says requiring it throws an error without a browserify transform.
For example, a post-processing composer that builds an uber shader at runtime based on some chunks the user defines in a particular order:
- vignette
- film grain
- curves / color grading
- luminosity
- sepia tone
- etc.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.