Global illumination (GI) in Godot refers to a lighting system that combines direct light (from light sources) and indirect light (bounces from surfaces). It is used to achieve realistic lighting by mimicking real-world light behavior, such as light bouncing off colored walls or being emitted from emissive materials.
Key components include:
Indirect Diffuse Lighting
Lighting that does not change based on camera angle. It is derived from:
- Surface Bouncing: Light hits a surface and reflects onto others. The number of bounces affects realism and performance (typically 1-2 bounces in real-time, or up to 16 when baking lightmaps).
- Emissive Materials: Materials that act as area lights by emitting light from their surface.
Specular Lighting (Reflections)
Lighting that changes intensity based on the camera's angle. It can be either direct or indirect.
Ambient Occlusion and Reflections
For small objects, you can enhance visual fidelity using:
- SSAO (Screen-Space Ambient Occlusion): Provides more accurate ambient occlusion. Enable this in the
Environment settings. Note that it has a significant performance cost. - SSR (Screen-Space Reflections): Provides more accurate reflections. Enable this in the
Environment settings. Note that it has a very high performance cost.