Dynamic Ray Population Control for Real-Time Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Ray tracing in computer graphics is computationally intensive, leading to challenges in rendering high-quality, real-time 2D representations of 3D scenes due to the high number of rays that need to be intersection tested and shaded, which can result in memory and resource constraints, causing deadlocks and inefficiencies.

Innovation Solution

Implementing dynamic ray population control by prioritizing and deferring the shading of ray intersections based on weighting factors and heuristics, such as ray emission predictions, to manage memory usage and optimize resource allocation during rendering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If ray tracing is used to render photo-realistic images with realistic shadow and lighting effects, then rendering quality is improved, but computational time and resource consumption increase substantially

Engineering Contradiction:
Improverendering qualityVSAvoidcomputational time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent segments the ray tracing process into distinct phases: intersection testing, shading, and ray instantiation. By separating these operations and processing them in stages rather than simultaneously, the system can manage computational load more effectively while maintaining rendering quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary intersection testing to identify candidate primitives before executing shading operations. By pre-processing and organizing geometric data structures (such as bounding volume hierarchies), the system prepares the scene in advance to accelerate the actual ray tracing computation.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If shaders are executed to determine closest primitive intersections and generate additional rays, then rendering realism is improved, but memory consumption and resource constraints increase

Engineering Contradiction:
Improverendering realismVSAvoidmemory consumption
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent applies local quality by executing shaders selectively only at intersection points where they are actually needed, rather than maintaining all shader data in memory simultaneously. This allows the system to load and execute shader code locally at the point of use, reducing overall memory requirements while maintaining rendering realism.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements a streaming approach where shader code and data are loaded into memory, executed for a batch of rays, then discarded and replaced with the next batch of shader data. This cyclic loading and discarding pattern allows the system to handle complex scenes with many shaders without requiring all shader data to reside in memory at once.

Inventive Principle:
Principle #34Discarding and recovering

3Measurement precision

If multiple rays are instantiated by shaders for diffuse lighting, shadow testing, and material properties, then rendering accuracy is improved, but resource constraints and deadlock risks increase

Engineering Contradiction:
Improverendering accuracyVSAvoidresource constraint management
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent implements periodic action by processing rays in batches or waves rather than simultaneously. After a batch of rays completes intersection testing and shading, the system pauses to manage resources before launching the next batch. This periodic processing pattern prevents resource exhaustion and deadlock while maintaining rendering accuracy through sufficient sampling.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent employs dynamic ray population control, adjusting the number of rays instantiated by shaders based on available resources and scene complexity. The system can dynamically modify ray generation parameters, such as reducing the number of shadow rays or diffuse sampling rays when resources are constrained, thereby maintaining stability and preventing deadlock while preserving essential rendering accuracy.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9940687B2Dynamic graphics rendering scheduling
Publication Date: 2018.04.10 IMAGINATION TECH LTD
  • US9940687B2 patent drawing
  • US9940687B2 patent drawing
  • US9940687B2 patent drawing

AI summary

Aspects can be for ray tracing of 3-D scenes, and include dynamically controlling a population of rays being stored in a memory, to keep the population within a target, a memory footprint or other resource usage specification. An example includes controlling the population by examining indicia associated with rays returning from intersection testing, to be shaded, the indicia correlated with behavior of shaders to be run for those rays, such that population control selects, or reorders rays for shading, to prioritize shading of rays whose shaders are expected to produce fewer rays.