What problem does it solve? Setting up realistic lighting in Three.js r160+ scenes is error-prone: physically correct intensity units (lux, candela, nits) blow out scenes without tone mapping, shadow-casting PointLights destroy frame rates, RectAreaLights silently fail without initialization, and environment maps leak GPU memory when PMREMGenerator is not disposed. This Skill provides correct patterns and anti-patterns for every lighting scenario. ## Core Features & Use Cases - All 7 Light Types: Complete API coverage for AmbientLight, HemisphereLight, DirectionalLight, PointLight, SpotLight, RectAreaLight, and LightProbe with correct intensity units and shadow cost budgets. - Image-Based Lighting: Standard RGBELoader/EXRLoader + PMREMGenerator workflow for scene.environment, background, blurriness, intensity, and rotation control. - Anti-Pattern Library: 11 documented mistakes (missing light.target, uninitialized RectAreaLightUniformsLib, missing tone mapping, undisposed PMREMGenerator) with fixes. - Use Case: Building a product showcase scene — apply the three-point lighting recipe (key, fill, rim directional lights) plus a studio HDR environment at reduced intensity for PBR reflections. ## Quick Start Set up lighting for my Three.js scene with a directional sun light, ambient fill, and an HDR environment map using physically correct intensities and tone mapping.