codedgar/three-fenestra — explained in plain English
Analysis updated 2026-05-18
Add convincing furnished-room illusions behind windows in a 3D architectural visualization.
Add realistic curtains, blinds, and dirty glass effects to building exteriors in a game or scene.
Simulate day and night lighting changes behind windows without real interior geometry.
Drop interior mapping into an existing Three.js or React Three Fiber scene with minimal setup.
| codedgar/three-fenestra | futureuniant/workshadow | javlonbek1233/-l-clat-culinaire | |
|---|---|---|---|
| Stars | 42 | 42 | 42 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | easy | moderate | easy |
| Complexity | 3/5 | 2/5 | 1/5 |
| Audience | developer | general | vibe coder |
Figures from each repo's GitHub metadata at analysis time.
Project is pre-1.0 (version 0.2.0), so the API may still change.
Three-Fenestra is a library for 3D web graphics that makes flat window surfaces in a scene look like they have real furnished rooms behind them, without actually modeling or lighting those rooms. The trick is a classic graphics technique from 2008 called interior mapping: by using a texture atlas of pre-rendered room images and a lightweight ray-march shader, the library creates a convincing illusion of depth and interior space purely through math, with almost no performance cost compared to modeling real rooms. The library extends a standard material type from Three.js, which is a popular JavaScript library for 3D graphics in the browser. This means you can drop it into any existing Three.js scene with minimal changes. It also works inside React Three Fiber, a React-based wrapper for Three.js. Beyond the basic interior illusion, the library adds a second layer on top of the window surface for curtains, blinds, window frames, and glass effects. This front layer supports physically-based rendering, which is a standard technique for making surfaces respond realistically to light. Curtains can glow slightly from light behind them. Glass can show dirt, fingerprint smudges, a frosted appearance, and a faint fresnel sheen at grazing angles that signals to the viewer that a pane of glass is present. The library ships with ready-made starter textures so you can see something render immediately without creating your own artwork. A live demo site is linked from the repository. Configuration options are numerous and documented in a reference table: you can control apparent room depth, how many rooms are in your atlas grid, how dirty the glass looks, how strongly curtains block or transmit interior light, and more. Day and night lighting modes are supported through adjustable uniforms you wire to your own time-of-day controller. The project is pre-1.0, currently at version 0.2.0. Installation is a single npm command, and the README walks through both vanilla Three.js and React Three Fiber usage with code examples.
A Three.js library that fakes furnished rooms behind window surfaces using a shader trick, so 3D scenes look detailed without modeling real interiors.
Mainly TypeScript. The stack also includes TypeScript, Three.js, React Three Fiber.
No license information is provided in the explanation.
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.