Compose the aperture.
The WebGL study used imperative stencil passes. This route expresses
the same idea as a WebGPU node graph: a PassNode produces
the scene texture, a TSL effect transforms it, and a screen-space
region selects how much of that effect is mixed back in.
Preparing the node-composed postprocessing graph...
- backend
- -
- architecture
- -
- graph
- -
- region
- -
- output
- -
- target
- -
- frame ms
- -
- sample
- WAITING
- resources
- -
The effect is mixed into the inside ellipse through a TSL screenUV mask.
Run a bounded sample after selecting a graph configuration; the sample reports average and p95 frame time.
pass(scene, camera)scene texture + depthscreenUVnormalized fragment coordinatesmix(base, effect, mask)regional compositionRenderPipeline.outputNodefinal graph noderenderOutput()tone/color boundaryneedsUpdate = truegraph output changedThe WebGPU path composes nodes instead of inserting imperative full-screen passes.
PassNode owns its render target; RenderPipeline owns the final composed node graph.
Derived from the official WebGPU postprocessing example, current RenderPipeline, PassNode, RenderOutputNode, ScreenNode, and TSL contracts. Use ?forceWebGL=1 to inspect the explicit direct WebGL2 fallback.