Unity Lighting Research

Global Illumination(GI)

Global illumination is a techniques for calculating how light bounces from one object onto the next, in simply terms GI use ray tracing calculations to calculate how light waves would behave. This ultimately creates much nice looking and more realistic lighting in a scene by indirectly lighting objects through light bounce.

The calculations required to produce real time GI are very CPU intensive, for video games this means that full real time GI cannot be achieved. However, Unity offers two GI solutions that are not fully real time but emulate the results.

Because the GI calculations are so CPU intensive Unity offers two separate GI systems, both of these rely on pre-computing information and storing it into the game files so that it can be accessed at run time. The two solutions offered by Unity are known as ‘Pre-Computed GI’ and ‘Baked GI’. It is up to the developer to decide which system they use, but each system is targeted towards specific hardware. Is it a PC, mobile or console game for instance.

Pre-Computed GI

As mentioned above Unity cannot handle GI computations at run time because they are simply to CPU intensive. Unity does however offer a pre-computed GI solution. This solution uses real-time lighting at run time to directly illuminate objects, however GI information is ‘pre-computed’ for indirect lighting. The pre-computed information is stored and then accessed at run-time to emulate ‘real time GI’, without the heavy CPU cost.

Pre-computed GI is useful when the developer has animated lights or many moving objects within the scene. Because GI is pre-computed and finalized at run time objects are effected at run time.

More information can be found at, Unity Global Illumination Manual

Baked GI

In contrast to Pre-Computed GI is Baked GI. Baked GI uses no pre-computed information at run time, but instead reads a number of light maps baked during the development process. These light maps are applied to objects within the scene on load, because of this real time indirect lighting using baked GI cannot be achieved. But because Baked GI uses no CPU at run time it is the most efficient solution in terms of CPU power and is therefore often used for mobile platforms or older hardware. Baked GI can also be used if the lights within the scene are not animated, however to light animated objects at run time using baked GI requires an addition step.

More information can be found at, Unity Global Illumination Manual


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a free website or blog at WordPress.com.

Up ↑

%d bloggers like this: