Let roughness blur the mirror.
A mipmapped reflector can become a material input instead of a single
sharp copy. This lab maps a generated roughness field to
textureBicubic(), making reflection filtering and its
resource contract visible in one surface.
Preparing the HDR environment, mipmapped reflector, and roughness field…
- backend
- —
- graph
- —
- roughness
- —
- blur strength
- —
- target scale
- —
- frame ms
- —
The reflection graph will be compiled after the renderer and environment are ready.
ReflectorNode
generateMipmaps: true
textureBicubic()
CanvasTexture / NoColorSpace
MeshStandardNodeMaterial
direct matte floor
The floor reads the reflector color at a roughness-dependent mip level; high roughness broadens the reflection without a separate blur render pass.
WebGPU executes the reflector and TSL texture-bicubic path. The forced WebGL2 route keeps the environment, actors, and lifecycle visible but does not execute ReflectorNode.
Derived from the official Roughness Reflection example and the ReflectorNode, TextureNode, and TSL contracts. Use ?forceWebGL=1 to inspect the explicit fallback.
The renderer could not create the study.