BVH Tree Traversal via Grid Mapping for Ray Intersection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional ray tracing methods require extensive traversal of acceleration data structures like BVH trees for ray-object intersection tests, leading to high computational complexity and resource usage, particularly when rendering images that demand millions of intersection tests.

Innovation Solution

The method involves organizing a scene as a hierarchical data structure, mapping nodes to a grid, and initiating traversal from a non-root node based on the initial intersection location, thereby reducing the number of intersection tests and optimizing resource usage by traversing only a portion of the tree.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional ray tracing methods traverse the entire BVH tree from the root node for each ray, then all possible ray-object intersections can be detected, but the computational complexity and resource usage become excessively high

Engineering Contradiction:
Improveray-object intersection detection accuracyVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies local quality by creating a grid-based spatial partitioning where different regions of the scene are handled differently. The grid divides space into cells, and only nodes corresponding to cells intersected by the ray are traversed. This allows the system to focus computational effort locally on relevant regions rather than uniformly processing the entire BVH tree, thereby reducing overall computational complexity while maintaining intersection detection accuracy.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent segments the BVH tree traversal process by introducing a grid structure that partitions the scene space. Instead of treating the BVH tree as a single monolithic structure, the grid divides it into multiple spatial regions (cells), allowing independent traversal decisions for each cell. This segmentation enables the system to process only the necessary portions of the tree, reducing computational complexity while preserving complete intersection detection capability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the entire BVH tree is traversed for every ray, then complete scene coverage is achieved, but the rendering time increases significantly

Engineering Contradiction:
Improvescene coverage completenessVSAvoidrendering time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing the mapping between grid cells and BVH nodes before ray tracing begins. This pre-processing step creates a lookup structure that allows the system to quickly determine which nodes to traverse based on the ray's initial cell intersection. By preparing this spatial index in advance, the system avoids unnecessary traversal during actual rendering, significantly reducing rendering time while ensuring complete scene coverage through the grid-based navigation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a grid structure as an intermediary between the ray and the BVH tree. Instead of directly traversing the BVH tree from the root, the ray first intersects the grid, and this grid intersection information mediates the subsequent BVH traversal by identifying relevant nodes. This intermediary layer acts as a filter that guides the traversal process, reducing the number of nodes visited while ensuring all potentially intersected objects are covered.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If all nodes in the hierarchical data structure are processed, then no intersection is missed, but the number of intersection tests and resource utilization increase

Engineering Contradiction:
Improveintersection test completenessVSAvoidresource utilization
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by making the resource consumption spatially selective. Instead of uniformly processing all nodes, the grid-based approach concentrates computational resources only on cells that the ray actually intersects. Each cell in the grid corresponds to specific BVH nodes, and the system processes only those nodes associated with intersected cells. This localized processing maintains complete intersection detection for relevant regions while dramatically reducing overall resource utilization.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by processing only the necessary subset of BVH nodes rather than all nodes. The grid structure enables the system to identify and process only those portions of the scene that are spatially relevant to the ray's path. By performing partial traversal focused on intersected cells, the system achieves complete intersection detection for the ray's trajectory while avoiding wasted resources on processing nodes that cannot possibly contribute to the result.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11282260B2Bounded volume hierarchy (BVH) tree traversal using spatial division
Publication Date: 2022.03.22 QUALCOMM INC
  • US11282260B2 patent drawing
  • US11282260B2 patent drawing
  • US11282260B2 patent drawing

AI summary

A method is presented. The method includes organizing a scene as a number of bounding volumes in a hierarchical data structure. The method also includes generating a grid based on the hierarchical data structure. The method further includes mapping each node of the hierarchical data structure to at least one cell of the grid. The method additionally includes identifying a cell of the grid corresponding to an initial intersection location of a ray and the scene. The method still further includes determining a non-root node of the hierarchical data structure as a start node for traversing the hierarchical data structure based on the identified cell. The method also includes traversing the hierarchical data structure starting from the start node to identify a number a primitives intersected by the ray.