Acceleration Structure Generation Using Morton Code Primitives

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current ray tracing methods require significant computation and memory bandwidth for generating and traversing acceleration structures, which hinders the efficiency of the search and intersection check processes in 3D rendering.

Innovation Solution

A method and apparatus for generating an acceleration structure by aligning primitives, determining candidate split points using Morton codes, storing these points, and generating nodes to construct the acceleration structure, which reduces computation and power consumption by utilizing previously stored candidate split points from similar renderings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional ray tracing methods are used to generate acceleration structures, then complete and accurate spatial identification of objects is achieved, but computation time and memory bandwidth consumption increase significantly

Engineering Contradiction:
Improveaccuracy of spatial identificationVSAvoidcomputation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-sorting primitives using Morton codes before the actual acceleration structure generation. This pre-processing step organizes primitives in a predetermined direction based on their spatial coordinates, so that when the acceleration structure is generated, the primitives are already in an optimal sequence for spatial identification. This eliminates the need for complex real-time sorting during ray tracing operations, significantly reducing computation time while maintaining accurate spatial identification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the acceleration structure generation process into distinct phases: (1) sorting primitives by Morton codes in a predetermined direction, (2) identifying split points based on the sorted sequence, and (3) generating the acceleration structure using these split points. This segmentation allows each phase to be optimized independently, with the sorting phase preparing data in advance and the structure generation phase efficiently building the acceleration hierarchy without redundant computations.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If traditional ray tracing methods traverse acceleration structures, then accurate intersection checks are performed, but memory bandwidth consumption increases

Engineering Contradiction:
Improveaccuracy of intersection checkVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-organizing primitives into an acceleration structure with nodes arranged in a predetermined direction based on Morton codes. This pre-organization creates a hierarchical structure where spatial relationships are encoded in the node arrangement itself. During ray tracing, the traversal follows this predetermined structure, allowing the GPU to efficiently navigate through space without requiring frequent random memory accesses, thus reducing memory bandwidth consumption while maintaining accurate intersection detection.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If acceleration structures are generated without optimization, then complete object data is processed, but computation and power consumption increase

Engineering Contradiction:
Improverendering efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The patent applies preliminary action by pre-sorting all primitives using Morton codes before acceleration structure generation. This pre-sorting organizes primitives in a predetermined direction based on their spatial coordinates, creating an ordered sequence that simplifies subsequent processing. When the acceleration structure is generated from this pre-sorted data, the computation required for spatial identification and split point determination is significantly reduced, leading to lower power consumption during rendering while maintaining complete object data processing.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10497167B2Method and apparatus for generating acceleration structure
Publication Date: 2019.12.03 SAMSUNG ELECTRONICS CO LTD
  • US10497167B2 patent drawing
  • US10497167B2 patent drawing
  • US10497167B2 patent drawing

AI summary

A method and apparatus for generating an acceleration structure. Primitives corresponding to at least one object on which rendering is to be performed may be aligned. Candidate split points are determined by scanning the aligned primitives. The candidate split points are stored according to a predetermined rule, and the acceleration structure is generated by sequentially reading the stored candidate split points and generating at least one node corresponding to the stored candidate split points.