Static Lights


Static Lights are lights that cannot be changed or moved in any way at runtime. They are calculated only within Lightmaps, and once processed, have no further impact on performance. Movable objects cannot integrate with static lights, so the usefulness of static lights is limited.

Of the three light mobilities, Static lights tend to have medium quality, lowest mutability, and the lowest performance cost.

Since Static lights only use Lightmaps, their shadows are baked prior to gameplay. This means that they cannot shadow moving (dynamic) objects, as we see in the example. However, when lighting objects that are also static, they have the ability to produce area (contact) shadows. This is done by adjusting the Source Radius property. However, it should be noted that surfaces receiving soft shadows will likely have to have their Lightmap Resolution set appropriately in order for the shadows to look good.

The primary use case for static lights is for low power devices on mobile platforms.

Light Source Radius

As mentioned above, Light Source Radius for Static Lights have the additional effect of softening the shadows they cast, much in the same way area lights work in many 3D rendering packages. Below, the light on the left has a small Light Source Radius and casts sharper shadows. The light on the right has a larger Light Source Radius and so casts softer shadows.


Lightmap Resolution

Lightmap Resolution allows you to control the detail of the baked lighting that static lights produce.

On Static Mesh Components, lightmap resolution is set either on the Static Mesh asset, or by checking the Override Lightmap Res checkbox and setting the value. Larger values mean higher resolution, but also longer build times and more memory.

On Brush surfaces, lightmap resolution is set via the Lightmap Resolution property. This is really setting a density, so lower values produce higher resolution.

Lightmap Resolution 4.0

Lightmap Resolution 16.0