Caustics

Caustics

Realtime colored caustics, ported from the three.js WebGPU example.

A transmissive duck renders into an HDR light-space map using a refracted repeating pattern, surface-facing occlusion, and chromatic splitting. The floor then receives that map as a colored shadow beneath a soft spotlight. Switch to the glass pane to see the same reusable projection pass applied to a different mesh and texture.

Credits: Ported from the three.js WebGPU Caustics example (MIT)

Execution
Preview