Lights fundamentals and deep research

Hi, I want to ask where to find good for basic and deep understanding of lights. Not just resources for three.js cause its documentation in lights is not so hard to find a way how it works. I dont care whether it is CPU or GPU context of light setup.

For example volumetric lights of maxime heckel, but this doesnt cover all the lights function and nodes of three.js in lights effects

If you want a deeper understanding of lighting, it helps to study the fundamentals of real-time rendering rather than only Three.js specific tutorials. Three.js mostly implements standard graphics techniques that come from computer graphics research and game engines.

A very good place to start is the book “Real-Time Rendering” by Tomas Akenine-Moller, Eric Haines, and Naty Hoffman. It explains how lights work in modern rendering pipelines, including shading models, shadowing, and global illumination concepts.

Another great resource is the website “LearnOpenGL”. Even though it uses OpenGL, it explains lighting models very clearly such as Phong, Blinn-Phong, physically based rendering, normal mapping, and shadow mapping. All of these concepts translate directly to Three.js.

For shader-level understanding, the book “The Book of Shaders” is excellent. It teaches how light interaction is computed mathematically in fragment shaders.

For more advanced and modern approaches like volumetric lighting, atmospheric scattering, and physically based rendering, you can also look at resources from game engine documentation like Unreal Engine or Unity graphics docs. They often explain the theory behind the techniques, not just the implementation.

In general I would recommend learning these topics:

lighting models (Lambert, Phong, Blinn-Phong, PBR)
shadow mapping
BRDF and physically based rendering
volumetric lighting and raymarching
global illumination concepts

Once you understand these fundamentals, the lighting systems in Three.js become much easier to understand because they are implementations of the same underlying graphics principles.