Overview
Lighting a Unity 3D scene is the process of making the space readable, believable and performant. For a beginner scene, lighting should answer practical questions before it tries to look cinematic: can the player see the route, read the goal, notice hazards, understand depth and recognise interactive objects?
Unity’s Creative Core lighting course introduces direct and indirect light, global illumination, real-time lighting and baked lighting as the core vocabulary for URP scene lighting (Unity Technologies, Creative Core Lighting, see source-unity-creative-core-lighting). This page turns that vocabulary into a first-scene workflow.
Setup
Use this baseline for a small 3D prototype:
- Use a URP project or convert the scene to URP before material and lighting polish.
- Keep one Directional Light as the broad sun, moon or key light.
- Add local Point Lights or Spot Lights only where they support route, goal or mood.
- Use simple URP Lit materials with sensible base colour, metallic and smoothness values.
- Test lighting from the game camera as well as Scene view.
- Decide which objects are static and which need to move.
- Use baked lighting for static environment contribution when performance or quality matters.
- Use real-time lights where the light or shadow must change during play.
Usage
Beginner lighting pass
| Pass | Question | Unity action |
|---|---|---|
| Visibility | Can the player see the route and goal? | set Directional Light angle and intensity |
| Separation | Does the player stand out from the background? | adjust material values, light direction and contrast |
| Guidance | What should the player look at first? | add focused light or warm colour near the objective |
| Mood | What should the space feel like? | tune colour temperature, skybox, fog and post-processing |
| Performance | Which lights must update live? | keep dynamic lights limited and bake static contribution where useful |
Real-time and baked lighting
Real-time lights are calculated at runtime. They are useful for moving lights, dynamic shadows, flickering torches, flashlights and gameplay effects. Unity Learn explains that real-time lighting is calculated once per frame, which makes it responsive to moving scene elements (Unity Technologies, Creative Core Lighting, see source-unity-creative-core-lighting).
Baked lighting is calculated before runtime and stored as lightmap data. It can make static scenes cheaper to run and can produce richer indirect lighting, but it does not respond to live scene edits until rebaked. Unity Learn describes baking as pre-calculating lighting and storing it in a texture called a lightmap (Unity Technologies, Creative Core Lighting, see source-unity-creative-core-lighting).
Lightmap UVs: UV0 for textures, UV1 for lightmaps
Baking needs a second set of UVs. A mesh’s first UV channel (UV0, Mesh.uv) is where Unity stores the coordinates for ordinary textures such as the Base Map and other surface maps (Unity Technologies, Scripting API: Mesh.uv). Baked lightmaps read the second channel, UV1 (Mesh.uv2), because lightmap UVs have stricter rules: every face inside the 0–1 square, no overlapping faces, and enough margin between islands (Unity Technologies, Unity Manual: Generate lightmap UVs). PBR textures keep using UV0 when you bake; the lightmap is an extra layer sampled through UV1.
To create UV1, select the model, open Model tab > Geometry, tick Generate Lightmap UVs and click Apply, or author a second UV map in Blender yourself. See 3d-materials-and-uvs for the modelling side.
Probes, reflections and the camera
Lightmaps only light static surfaces. Two kinds of probe fill the gaps:
- Light Probes or Adaptive Probe Volumes store baked indirect light in empty space so moving objects match the baked room. See unity-light-probes-and-adaptive-probe-volumes.
- Reflection Probes capture cubemaps of their surroundings so shiny materials reflect the room rather than the sky. See unity-reflection-probes-and-specular.
The camera does not compute global illumination, so a moving camera is not a reason to avoid baking. What does change with the camera is specular: highlights and reflections are view-dependent by design, while diffuse and baked light look the same from every angle. Camera field of view and focal length change framing, not the material maths.
Materials and lighting
Lighting problems are often material problems. A scene can look flat because every material has similar value, metallic and smoothness settings. Unity’s URP Lit shader exposes Base Map, Metallic or Specular Map, Smoothness and Normal Map as core surface inputs (Unity Technologies, URP Lit Shader, see source-unity-urp-lit-shader). Check material values before adding more lights.
Player guidance
Use lighting as a design tool:
- light the goal more clearly than the background
- use warm accents against cool ambience for attention
- keep hazards readable through contrast, silhouette or colour
- place diegetic light sources where they make sense in the world
- test with the UI hidden to see whether the scene still communicates
This links directly to lighting-for-mood-and-guidance, where light is treated as a functional tool for attention, wayfinding and mood.
Gotchas
| Symptom | Likely cause | Fix |
|---|---|---|
| Scene looks flat | light direction and material values are too similar | increase value contrast and change the key-light angle |
| Object is too shiny | smoothness too high | lower smoothness or adjust roughness before adding lights |
| Goal is hard to find | background competes with focal point | reduce background contrast or add a focused accent |
| Moving object looks disconnected | baked light does not affect it correctly | add Light Probes or an Adaptive Probe Volume (unity-light-probes-and-adaptive-probe-volumes) or use suitable real-time lighting |
| Baked light does not update | lightmap is stale | rebake lighting after changing static light or geometry |
| Baked lightmap looks smeared or blotchy on a model | missing or overlapping lightmap UVs | tick Generate Lightmap UVs in the Model import settings, or fix UV1 in Blender |
| Shiny surfaces reflect the sky indoors | no Reflection Probe | add a baked Reflection Probe (unity-reflection-probes-and-specular) |
| Frame rate drops | too many real-time lights or shadows | reduce dynamic lights, shadows or range, then profile |
Practice
Light the one-room greybox from 3d-blocking-and-greyboxing:
- Add one Directional Light for the main direction.
- Add one local light near the goal.
- Add one darker danger area that remains readable.
- Create three simple URP Lit materials: floor, wall and pickup.
- Test from the game camera.
- Ask another student where they think the goal is.
- Change one light or material value and test again.
Write a short lighting note with three headings: What the player should see first, What supports the mood, and What might cost performance.
Self-test
- What is the difference between real-time and baked lighting?
- Why should lighting be tested from the game camera?
- Why might adding more lights fail to fix a flat-looking scene?
- When should a light be real-time?
- What is one reason to use baked lighting?
- Which UV channel do baked lightmaps use, and which do your textures use?
- Does moving the camera recalculate global illumination?
Answers
- Real-time lighting is calculated during play. Baked lighting is calculated before runtime and stored as lightmap data.
- The player sees the game camera, so readability must be judged from that view.
- The problem might be material values, weak contrast, camera framing or composition rather than the number of lights.
- A light should be real-time when it moves, changes, casts dynamic shadows or affects gameplay moment by moment.
- Baked lighting can reduce runtime cost and improve static indirect lighting quality.
- Baked lightmaps use UV1 (
Mesh.uv2); textures use UV0 (Mesh.uv). Generate UV1 with Generate Lightmap UVs or author it in Blender. - No. GI comes from bakes, probes or Enlighten Realtime GI. The camera only changes what is drawn and the view-dependent specular.
Related
- overview-beginner-3d-game-development-route
- lighting-for-mood-and-guidance
- composition-and-tonality
- 3d-materials-and-uvs
- unity-urp-lighting-and-render-features
- unity-light-probes-and-adaptive-probe-volumes
- unity-reflection-probes-and-specular
- unity-urp-overview
- unity-profiler
- source-unity-creative-core-lighting
- unity-2d-lighting — For 2D projects: URP 2D Renderer and Light 2D
- unity-probuilder — Lightmap UVs on ProBuilder meshes