A 2D light playground on the web. Sometime ago, I saw Lusion's light tracing website and was amazed. Since that website was published, 2D light algorithms have improved significantly, so I decided to make a continuation of it.
The wallpaper engine counterpart of the program is on the lights-WE branch (rework)
Todos
- Cleanup/structure code -> More work?
- Look into holographic radiance cascades
- Optimize and cleanup + look into webgpu
- Switch to TypeScript as a learning experience because it looks way better
- Convert to tailwind css as a learning experience
- colorspace -> solved (https://discourse.threejs.org/t/updates-to-color-management-in-three-js-r152/50791)
- Need a whole lot more modes
2D global illumination via (Holographic) Radiance Cascades (rework this section).
HRC
The RC impl contains both direction major (pre averaged) and probe major. It relies on a DF produced by the JFA to skip empty space when tracing rays (no volumetrics).
I also overlay non volumetric objects on top in full resolution as upscaling blurs things.
Using Holographic Radiance Cascades
(Old) Using Radiance Cascades:
(rework)
The (Holographic) Radiance Cascade implementation is based on Volumetric-HRC and GMShaders-Radiance-Cascades by Yaazarai, used under the Unlicense.
Some old parts of this project are based on code from Radiance Cascades (by Jason McGhee), used under the MIT License.