Your level looks great when you open it in the Editor. Then you load it from the main menu, or in a build, and everything is dark, flat or strangely tinted. This happens to almost everyone once. A Unity scene too dark after loading is nearly always caused by lighting data that was never generated or isn’t being used. This guide explains what’s going on, then shows the fixes for Unity 6 with URP.
Why It Only Happens After Loading
Unity’s ambient lighting (the soft light from the sky) and reflections are calculated, not live. When you open a scene in the Editor and the scene has never had its lighting generated, the Editor computes a temporary version so you see something sensible. That temporary data isn’t saved.
When you load the scene at runtime with SceneManager.LoadScene, or in a build, that temporary data doesn’t exist. Without it, ambient light and reflections are black or default. Objects are lit only by direct lights, so shadowed sides go completely dark and metals look black.
So the rule is: every scene you load at runtime needs its lighting generated and saved.
Fix 1: Generate Lighting
- Open the scene.
- Open Window > Rendering > Lighting.
- In the Scene tab, make sure there’s a Lighting Settings asset assigned. If not, click New to create one.
- Click Generate Lighting at the bottom.
Unity creates a folder next to the scene with the same name, containing a LightingData asset, lightmaps (if you have baked lights), and the reflection probe and ambient data. The scene now references that data, so it loads correctly anywhere.
You need to generate lighting even if you have no baked lights at all. With Baked Global Illumination off, generation is quick, because it’s just capturing the sky’s ambient light and reflections.
Do it for every scene in the build, and again whenever you change the skybox, environment settings or baked lights. The baked vs realtime lighting guide explains what goes into the bake.
Fix 2: Environment Lighting and Reflections
In the Lighting window’s Environment tab, check:
- Skybox Material: is one assigned? With none, ambient from the sky is black.
- Sun Source: your main Directional Light.
- Environment Lighting > Source: Skybox, Gradient or Color. Skybox uses the bake. Gradient and Color are simple and don’t depend on the bake at all, which makes them a good choice for stylised games that keep going dark.
- Intensity Multiplier: should be around 1.
- Environment Reflections: Source Skybox, with a sensible resolution. Without reflections, metallic and smooth materials look black.
Changing these marks the lighting as out of date. Generate lighting again afterwards.
Fix 3: Additive Scene Loading
If you load scenes additively (a persistent scene plus level scenes), Unity uses the lighting settings of the active scene. If your persistent “Systems” scene stays active, its empty lighting is used for everything.
using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
public class LevelLoader : MonoBehaviour
{
public IEnumerator LoadLevel(string sceneName)
{
yield return SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive);
SceneManager.SetActiveScene(SceneManager.GetSceneByName(sceneName));
}
}
Setting the newly loaded level as the active scene makes Unity use its skybox, ambient settings and fog. Baked lightmaps from each scene are combined automatically. The async loading guide shows a full loading screen around this.
Fix 4: Dark Dynamic Objects and Light Probes
If static objects look right but the player or moving objects look too dark, especially indoors, the problem is how dynamic objects receive bounced light. Baked lighting only goes into lightmaps for static objects. Dynamic objects get indirect light from light probes.
- Add a Light Probe Group (GameObject > Light > Light Probe Group) and place probes where dynamic objects travel, with extra probes where lighting changes, like doorways.
- Generate lighting again so the probes are baked.
- Check the object’s Mesh Renderer Light Probes setting is Blend Probes.
In Unity 6 you can also use Adaptive Probe Volumes in URP, which place probes automatically. Enable them in the URP Asset (Light Probe System) and add an Adaptive Probe Volume to the scene.
Fix 5: Post-Processing and Exposure
If the whole frame looks dim, check the Volume profile:
- Color Adjustments > Post Exposure set negative.
- Tonemapping: ACES darkens and adds contrast compared with Neutral or None. If you switched to ACES, bump exposure or light intensities a little.
- Vignette too strong.
- A Global Volume from another scene (in additive setups) overriding the level’s settings.
- The camera’s Post Processing checkbox is on in one scene’s camera but not another, so the “correct” look differs.
Disable the Volume temporarily to see whether post-processing is the cause. The URP post-processing guide covers Volume setup.
Other Causes
- Color Space. Project Settings > Player > Other Settings > Color Space should be Linear for modern projects. Switching between Gamma and Linear changes how everything looks.
- Quality level differences. A lower quality level may disable additional lights, shadows or use a different URP Asset with different light limits. Builds often use a different quality level from the Editor.
- Light culling. Too many lights affecting one object exceed the per-object limit (in the Forward path), so some lights don’t show. Use Forward+ for many lights.
- Light Mode Baked without baking. A Baked light contributes nothing in real time. If you never generated lighting, it’s as if the light isn’t there.
- Dark from the start in the Editor too. If it’s dark even when opened in the Editor, check the Directional Light’s intensity and the skybox.
💻 Baking takes horsepower
Lightmap baking runs on your GPU or CPU and can take ages on a weak machine. Our guide to budget laptops for Unity lists ones that bake comfortably.
Troubleshooting
Scene is dark only when loaded from the menu
The scene’s lighting was never generated. Open it, create a Lighting Settings asset if needed, and click Generate Lighting.
Lighting fine in the Editor, dark in the build
Same cause, plus check the build’s quality level and URP Asset.
Metal objects look black
No reflection data. Generate lighting so the skybox reflection is captured, or add a Reflection Probe.
Player is dark indoors but walls are lit
Add light probes or Adaptive Probe Volumes and bake again.
Skybox is wrong after loading additively
Set the loaded level as the active scene.
FAQ
Do I need to generate lighting with only realtime lights?
Yes, for ambient light and reflections from the skybox. It’s quick when baked GI is off.
Should I commit the lighting data to git?
Yes. The LightingData asset and lightmaps are what the scene loads at runtime. Use Git LFS for large lightmaps.
Can I rely on automatic lighting in the Editor?
Not for scenes you load at runtime. Click Generate Lighting so the data is saved as an asset the scene references.
Why does my scene look different each time I open it?
It’s using temporary lighting data. Generating lighting saves it so it’s consistent.
Gradient or Skybox ambient?
Skybox for realistic scenes. Gradient or Color is simpler and very predictable for stylised games.
Reader questions
Asked by readers of this article and answered by AI. Behavior can differ between Unity versions, so test in yours.




Leave a Reply