Virtual Emitters

intermediate concepts

Radiant 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 RadiantVirtualEmitter component to any GameObject or character

Properties

PropertyDescription
ColorEmission color of the virtual emitter.
IntensityEmission strength.
RangeEmission range in world units.
Box Center / Box SizeDefines 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?