Loading video...

Video Failed to Load

Go Home

🔥 enhance-shader-lighting is released! 🔥 ⮕ Demo: 3 example scenes with baked lightmaps and "enhanced lighting" through modified shaders. ⮕ GitHub: #threejs #webdev #3D #javascript #Graphics #webgl

85,209 views • 3 years ago •via X (Twitter)

10 Comments

0beqz's profile picture
0beqz3 years ago

So yeah the idea was to modify three.js shaders so that you have more control over the lighting through having a lot of parameters to tweak available. The implementation is purely arbitrary, just adding parameters where suitable in the shader.

0beqz's profile picture
0beqz3 years ago

Also the demo code is anything but clean 😄 Just did a lot of tests in there so it resulted in so many lines lol

Valentin Dubois's profile picture
Valentin Dubois3 years ago

Sweet!

clēmēns's profile picture
clēmēns3 years ago

I had to close backrooms, I was too afraid of a jumpscare😅

0beqz's profile picture
0beqz3 years ago

Lmao nice to see it's so immersive for you 😄

Anderson Mancini's profile picture
Anderson Mancini3 years ago

@mrdoob WOW!!!! How I missed this hehehe. Thank you, my friend! Your work is always superb!

seantai's profile picture
seantai3 years ago

lookin good

Andi Pollok's profile picture
Andi Pollok3 years ago

Oh. Wow. 🤯 Thanks for sharing.

Nick Scarcella's profile picture
Nick Scarcella3 years ago

Looks amazing!

Matt Collie's profile picture
Matt Collie3 years ago

@ScottieFoxTTV @nptacek

Related Videos

I built a Three.js rendering study inspired by Tiny Glade’s painterly aesthetic, and got it running at 120fps in the browser. Over the past few weeks, I’ve been studying how stylized games achieve that soft, handcrafted look in real time. Tiny Glade was a huge inspiration, and I wanted to use the browser as a constraint: no compute shaders, no native GPU access, and single-threaded JavaScript. As part of this study, I implemented: - GPU-driven instanced brick walls with procedural noise jitter and elastic build animations - Tree, bush, and flower rendering with billboard card expansion, wind sway, and grow animations - Procedural grass with terrain conformance and interactive push deformation - Animated water with layered noise, interactive ripples, and Fresnel-based reflections - Procedural terrain with slope-aware triplanar materials, dirt paths, and rocks - A 7-pass post-processing stack with TAA, bloom, depth of field, painterly filtering, ACES tonemapping, 3D LUT color grading, and film grain The hardest part wasn’t writing any single shader. It was making all of these systems work together at high frame rates inside WebGL, where every millisecond counts and performance problems compound quickly across animation, materials, post-processing, and scene management. Some techniques in this study were inspired by analyzing Tiny Glade’s rendering approach, while others were original implementations built from scratch from visual reference. That contrast taught me a lot: recreating an effect is one challenge, but designing your own shaders and systems to achieve a similar feel is a very different one. This is a private educational rendering study. Some temporary placeholder content is being used during the research phase, and any public or production version would use original or properly licensed assets. Huge credit to Pounce Light for the incredible art direction and rendering work in Tiny Glade: Three.js #gamedev #webgl #threejs #rendering #graphics #realtimerendering #shaderdev

Ibrahim Boona

58,625 views • 5 months ago