Ray-Box Intersection Span Relocation for Rendering Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional ray-box intersection tests in image rendering applications are prone to numerical inaccuracies and require a significant number of instructions, leading to bottlenecks in ray-tracing computation and potential misses in detecting intersections near box boundaries.

Innovation Solution

The method involves forming a span between plane-ray intersection points and increasing it by relocating one or both endpoints using the RAY_SLAB instruction, ensuring the span includes the true intersection points, and using TRI_SPAN_OP and SPAN_TEST_OVERLAP instructions to test for intersection with the ray, reducing the number of instructions needed and improving accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional ray-box intersection testing methods are used, then the intersection test can be performed, but numerical inaccuracies occur and intersections near box boundaries may be missed

Engineering Contradiction:
Improveintersection detection accuracyVSAvoiddetection reliability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent applies preliminary action by precomputing the inverse of the ray direction components (1/Dx, 1/Dy, 1/Dz) and storing them in registers before the intersection test. This preparation eliminates the need for division operations during the actual intersection calculation, reducing numerical errors and improving both accuracy and reliability of boundary intersection detection

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent transforms the intersection calculation by changing the computational parameters from direct division (B/D) to multiplication with precomputed inverses (B*(1/D)). This parameter transformation maintains mathematical equivalence while improving numerical stability and eliminating floating-point division errors that cause boundary intersection misses

Inventive Principle:
Principle #35Parameter changes

2Productivity

If conventional ray-box intersection testing is performed, then the intersection can be detected, but it requires 19 instructions creating a bottleneck in ray-tracing computation

Engineering Contradiction:
Improveray-tracing computation speedVSAvoidnumber of instructions
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses preliminary action by precomputing and caching the inverse ray direction values (1/Dx, 1/Dy, 1/Dz) in registers before traversal. This eliminates repeated division operations during intersection testing, reducing the instruction count from 19 to approximately 10-12 instructions per intersection test, thereby improving ray-tracing productivity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies copying by creating and reusing precomputed inverse direction values stored in registers throughout the traversal process. Instead of recalculating divisions for each intersection test, the system copies and reuses these precomputed values, significantly reducing the computational instruction count and improving processing speed

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8564589B1System and method for accelerated ray-box intersection testing
Publication Date: 2013.10.22 NVIDIA CORP
  • US8564589B1 patent drawing
  • US8564589B1 patent drawing
  • US8564589B1 patent drawing

AI summary

A method for performing a ray-box intersection test includes forming a span extending between a first plane-ray intersection point and a second plane-ray intersection point, and increasing the span by relocating to a new position at least one of the first and second plane-ray intersection points. A box intersection span is constructed using the increased span, and the box intersection span, which corresponds to a node in a hierarchical acceleration structure, is tested for intersection with the ray.