zalo/locuslucis — explained in plain English
Analysis updated 2026-07-15 · repo last pushed 2023-07-11
Reference realistic 2D lighting effects for a top-down browser-based game.
Learn how different light simulation algorithms compare by experimenting with live demos.
Build visually immersive 2D scenes with natural shadow casting around obstacles.
| zalo/locuslucis | elisaliman/ghostty-shaders | s0xdk/ghostty-blackhole | |
|---|---|---|---|
| Stars | 3 | 15 | 1,341 |
| Language | GLSL | GLSL | GLSL |
| Last pushed | 2023-07-11 | — | 2026-06-11 |
| Maintenance | Dormant | — | Maintained |
| Setup difficulty | easy | easy | moderate |
| Complexity | 3/5 | 1/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Runs directly in modern browsers like Chrome or Edge with no setup, esbuild is only needed if you want to modify the code.
LocusLucis is an experimental project exploring how to simulate realistic light bouncing in a 2D space, aiming to find the fastest possible method. Imagine shining a virtual flashlight into a room and watching the light spread naturally, illuminating surfaces and casting shadows based on where it hits. The project tests three different approaches to this 2D light simulation. One method uses mathematical angles to calculate what's directly visible and lit. Another sweeps lines around a scene to precompute visibility before rendering. The third shoots virtual light rays out from every pixel to determine what gets illuminated. All three rely on a popular 3D rendering tool called three.js to display the results in your browser. Frontend developers, game designers, and visual artists might find this useful as a reference for creating realistic lighting effects in 2D scenes or browser-based experiences. If you're building a top-down game and want light to behave naturally around obstacles, or you're just curious about how graphics programmers approach realistic illumination, these interactive experiments offer a hands-on look. The project serves as a personal testing ground for different lighting algorithms rather than a production-ready library. It runs directly in modern browsers like Chrome or Edge without needing complex setup, though developers can bundle the code using a tool called esbuild if they want to modify it. The README doesn't go into detail about performance comparisons or which method ultimately proved fastest, leaving that to hands-on experimentation with the live demos.
An interactive browser-based experiment testing three different methods for simulating realistic 2D light bouncing and shadow casting, built with three.js for visualization.
Mainly GLSL. The stack also includes three.js, GLSL, JavaScript.
Dormant — no commits in 2+ years (last push 2023-07-11).
No license information is provided in the repository, so usage rights are unclear.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.