Search Unity

How does realtime time lighting of big levels work?

Discussion in 'Universal Render Pipeline' started by ChikeMcNugg, Jan 18, 2021.

  1. ChikeMcNugg

    ChikeMcNugg

    Joined:
    Dec 26, 2020
    Posts:
    1
    Hello, I have a semi-open world game im making just for fun. I have a day-night cycle where the sun lights the world and then goes away at night as you would expect. I also have a number of torches and campfires around the map which have point lights in them I expected them to light up the surrounding area nicely as they did before I upgraded to urp. But they don't. They barely light up the immediate area. Even when I turn the range up to the max it doesn't light it up enough. I have attached pictures.
    As you can see the light is extremely bright in one spot but nonexistent on the ground or other surrounding parts. Usually baking the light would fix this for me in smaller maps like inside a house. But baking is not an option as the map is simply too big. What should I do?
     
  2. elJoel

    elJoel

    Joined:
    Sep 7, 2016
    Posts:
    125
    Have you tried increasing the intensity of the light?
     
  3. equalsequals

    equalsequals

    Joined:
    Sep 27, 2010
    Posts:
    154
    What is likely happening is that realtime lights in URP are culled per-object by their bounding box and can only have up-to the number of lights defined in your URP asset. Very large objects have very large bounding boxes and are probably being affected by several lights. This causes lights to pop in and out based on viewing angle, and sometimes for lights to not have any affect.

    Larger environments, open world games, etc. likely don't use a purely Forward Renderer like URP is structured currently. More likely to use deferred where light count is "limitless" or something like tiled/clustered light culling which URP does not support.