BVH Construction Using Local Transforms for Efficient Ray Tracing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Ray tracing systems face challenges in achieving real-time rendering on devices with tight constraints on silicon area, cost, and power consumption, such as mobile devices, due to the high processing requirements and inefficiencies in current acceleration structures, particularly when dealing with complex scenes containing millions of primitives and instanced geometry.
Innovation Solution
A method for constructing a bounding volume hierarchy (BVH) using a fixed set of local transformation matrices that map oriented bounding boxes (OBBs) to axis-aligned bounding boxes (AABBs) within a local coordinate system, allowing for efficient ray tracing by combining the benefits of both types of bounding volumes through predefined transformations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If modern ray tracing systems use acceleration structures based on bounding volume hierarchies, then intersection testing efficiency is improved, but processing power and working memory requirements increase, making real-time rendering difficult on mobile devices
Solution Approach 1:
The patent segments the acceleration structure into a two-level hierarchy: a top-level BVH for scene-level culling and bottom-level BVHs for detailed intersection testing. This segmentation allows the system to perform coarse filtering at the scene level (reducing overall processing load) while maintaining detailed accuracy where needed, thereby reducing total processing power and memory requirements compared to a single-level structure.
Solution Approach 2:
The patent applies partial action by performing intersection testing only on a subset of primitives that pass the bounding box culling test, rather than testing all primitives. The top-level BVH performs a preliminary filtering action that eliminates unnecessary intersection tests, reducing the overall computational workload while maintaining rendering accuracy for visible objects.
2Measurement precision
If every ray is tested against every primitive in the scene, then intersection accuracy is ensured, but processing time increases significantly for scenes with millions of primitives, making real-time rendering infeasible
Solution Approach 1:
The patent performs preliminary action by first testing rays against the top-level BVH bounding boxes before performing detailed intersection tests with individual primitives. This preliminary culling step filters out rays that will not intersect any primitives, performing the expensive intersection testing only on rays that pass the preliminary test, thereby reducing total processing time while maintaining accuracy for relevant intersections.
Solution Approach 2:
The patent segments the set of all primitives into groups enclosed by top-level bounding boxes, allowing the system to process only the subset of primitives relevant to each ray. This segmentation transforms the O(N) problem of testing all N primitives against every ray into a much smaller effective problem size by eliminating unnecessary tests through hierarchical culling.
3Measurement precision
If oriented bounding boxes are used to tightly enclose primitives, then intersection testing precision is improved, but computational complexity increases due to the need for transformation matrices and additional processing
Solution Approach 1:
The patent segments the bounding volume representation into two types: AABBs for the top-level hierarchy (where simple axis-aligned tests are sufficient and computationally cheap) and OBBs for bottom-level primitives (where tight enclosure is needed). This segmentation allows the system to use computationally expensive OBB transformations only where necessary, reducing overall device complexity while maintaining precision for critical intersection tests.
Solution Approach 2:
The patent applies local quality by using OBBs with transformation matrices only for the bottom-level bounding volumes where tight enclosure is most beneficial, while using simpler AABBs for top-level volumes where computational efficiency is prioritized. This localized application of complex transformations only where needed reduces overall computational complexity while maintaining high precision for the most important intersection tests.
Data Source
Figure 1
Figure 2
Figure 3A~3C
AI summary
A computer-implemented method of creating a bounding volume hierarchy, BVH, for a model is disclosed. The model is defined with respect to a local coordinate system for the model. The method comprises: defining BVH branch nodes within the model, establishing a plurality of local transformation matrices for the BVH; and for each BVH branch node, determining a first bounding volume and associating the branch node with one of the plurality of local transformation matrices that maps between the first bounding volume and a second bounding volume in the local coordinate system.