Mobile-DDGI: Lightweight Probe-Based Global Illumination via Adaptive Budget Allocation
Abstract
While Dynamic Diffuse Global Illumination (DDGI) and its extensions achieve efficient real-time global illumination on desktop hardware, their computational overhead remains a prohibitive bottleneck for resource-constrained mobile platforms. To address this limitation, we introduce an adaptive, probe-based framework that aggressively prioritizes updates within the camera frustum. Central to our approach is a novel probe importance metric that optimally distributes a strictly constrained mobile ray budget to the most perceptually significant probes. Evaluated across four distinct mobile ray tracing pipelines, our method significantly reduces the overall ray budget while robustly adapting to rapid radiometric and geometric changes without compromising visual fidelity.
Key Contributions
- Camera-attached multiple probe volumes
- Per-frame probe update budget
- Probe importance metric
Core Idea
Mobile-DDGI combines three ideas:
- Camera-attached cascaded probe volumes
- Tracking window-based logical probe movement
- Adaptive probe update budget allocation
The renderer maintains multiple DDGI probe volumes around the camera. Each volume has a different probe spacing, allowing dense indirect lighting near the viewer and coarser coverage farther away.
Only a limited number of probes are updated every frame. The update budget is assigned to probes that are expected to have the greatest visual impact.
Probe Volume Structure
Mobile-DDGI uses camera-attached cascaded DDGI volumes.
| Property | Description |
|---|---|
| Volume type | Camera-attached cascaded probe volumes |
| Probe grid size | 16 x 8 x 16 probes per cascade |
| Cascade spacing | Each cascade doubles the spacing of the previous one |
| Probe movement | Tracking window / infinite scrolling-style logical index update |
This structure keeps high-resolution probe coverage near the camera while avoiding full-scene dense probe allocation.
Adaptive Probe Update Algorithm
Mobile-DDGI updates probes in the following order:
| Step | Operation | Description |
|---|---|---|
| 1 | Update newly active probes | Probes newly entering the active region due to camera movement are updated first. |
| 2 | Compute probe importance | Each probe receives an importance value based on usage, distance, and view-center proximity. |
| 3 | Sort probes by priority | Probes are sorted according to the computed importance value. |
| 4 | Update high-priority probes | A fixed portion of the remaining budget is assigned to visually important probes. |
| 5 | Round-robin update | The residual budget is used to update the remaining probes sequentially. |
In the evaluated configuration, the update budget is set to 200 probes per 16 x 8 x 16 cascade. For four cascades, this means that only 800 probes are updated per frame out of 8,192 total probes.
Probe Importance Metric
Each probe is assigned an importance score :
| Term | Meaning | Purpose |
|---|---|---|
| Probe usage weight | Prioritizes probes contributing to the current indirect-lighting computation. | |
| Distance weight | Assigns greater importance to probes closer to the camera. | |
| View-center weight | Assigns greater importance to probes closer to the screen center. |
Probe Usage Weight
The weight prevents unused probes from being completely ignored while assigning higher priority to probes that directly contribute to shading.
Distance Weight
where:
| Symbol | Description |
|---|---|
| Probe position | |
| Camera position | |
| Distance threshold |
Probes near the camera are more likely to affect the final image and are therefore updated more aggressively.
View-Center Weight
The projected screen-space position of probe is defined as
Its normalized distance from the center of the screen is
The view-center weight is then computed as
The weight assigns higher priority to probes projected near the center of the user’s view. This formulation also supports future gaze-aware or foveated-rendering extensions.
Probe State Machine
Mobile-DDGI uses a probe state machine to avoid unnecessary probe updates.
| State | Description |
|---|---|
FRESHMAN | Newly introduced probe that needs initialization. |
CANDIDATE | Probe selected as a potential update target. |
UPDATE | Probe selected for ray tracing and DDGI data update. |
INACTIVE | Probe that is not actively updated in the current frame. |
Rendering Pipeline
The Mobile-DDGI rendering pipeline is organized as follows:
| Step | Stage | Description |
|---|---|---|
| 1 | Geometry pass | Render scene geometry and G-buffer data. |
| 2 | Check probe reference | Determine which probes are referenced during indirect lighting. |
| 3 | Priority sort | Sort probes using the adaptive importance metric. |
| 4 | Probe trace | Trace rays for selected probes. |
| 5 | Probe classification | Classify probes based on activity and update state. |
| 6 | Probe update | Update probe irradiance and distance data. |
| 7 | Indirect lighting pass | Evaluate indirect lighting from DDGI probe data. |
| 8 | Lighting pass | Combine direct lighting, indirect lighting, and material shading. |
Summary
Mobile-DDGI reduces DDGI update cost on mobile GPUs by allocating a strict per-frame probe update budget to the most important probes.
The algorithm prioritizes:
- Newly active probes caused by camera movement
- Probes referenced by current indirect lighting
- Probes close to the camera
- Probes close to the center of the user’s view
- Remaining probes through round-robin updates
This makes probe-based global illumination more suitable for mobile ray tracing environments with limited ray tracing throughput and strict performance constraints.



