Calling it is what links this module — the full-screen program and its two
shaders — into the bundle; a build that never calls it carries none of it.
The program still compiles lazily, on each renderer's first fixed effect
pass, never here and never at renderer initialize, so registration alone
changes no GL transcript. Without it, renderEffect skips the pass with
one development warning. §60's graph effects need
registerNodeMaterialPipeline() instead, not this. Idempotent; calling it
twice re-installs the same factory.
Opts this process's
WebglRenderers into §70's fixed effects — copy, colour grade, and §60a's output transform (§62; 2026-09-11).Calling it is what links this module — the full-screen program and its two shaders — into the bundle; a build that never calls it carries none of it. The program still compiles lazily, on each renderer's first fixed effect pass, never here and never at renderer initialize, so registration alone changes no GL transcript. Without it,
renderEffectskips the pass with one development warning. §60's graph effects needregisterNodeMaterialPipeline()instead, not this. Idempotent; calling it twice re-installs the same factory.