Virtual Emitters
intermediate conceptsRadiant GI (Built-in) · Core Concepts
Virtual Emitters are GI injectors that can be placed anywhere in the scene to simulate off-screen or hidden light sources. They inject indirect lighting into the GI computation, ensuring consistent illumination even when the actual emitter is outside the camera view or occluded.
Prerequisite: Enable Virtual Emitters in the Radiant GI Volume inspector before placing emitters.
Adding Virtual Emitters
There are two ways to add a virtual emitter:
- Menu: GameObject → Create Other → Radiant GI → Virtual Emitter
- Script: Add the
RadiantVirtualEmittercomponent to any GameObject or character
Properties
| Property | Description |
|---|---|
| Color | Emission color of the virtual emitter. |
| Intensity | Emission strength. |
| Range | Emission range in world units. |
| Box Center / Box Size | Defines the volume where this emitter’s light is applied. Use this to prevent light leaking through walls. |
Light leaking: Virtual emitter light can pass through walls. Always set Box Center and Box Size to constrain the emitter to the intended room or area.
Limits
There is no limit to the number of virtual emitters in a scene. However, only the 32 closest emitters to the camera are active at any time.
Common Use Cases
- Torches or fires behind the camera that should still cast warm GI
- Neon signs in adjacent rooms visible through doorways
- Character glow — attach an emitter to a character for dynamic colored lighting
- Lava or water surfaces that should emit colored indirect light
Scripting
using RadiantGlobalIllumination;
// Add a virtual emitter to a fire
var emitter = fireObject.AddComponent<RadiantVirtualEmitter>();
emitter.color = new Color(1f, 0.5f, 0.1f);
emitter.intensity = 5f;
emitter.range = 8f;
Was this page helpful?
Suggest an improvement
Help us improve this documentation page.