Efficient hierarchy traversal in ray tracing applications

US2016292908A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016292908-A1
Application numberUS-201514831726-A
CountryUS
Kind codeA1
Filing dateAug 20, 2015
Priority dateApr 2, 2015
Publication dateOct 6, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and systems disclosed improve the efficiency of ray tracing. In one aspect, a method of ray tracing in a digital representation of a scene includes segmenting the scene into a plurality of voxels, associating each of the voxels with a node of a bounding volume hierarchy (BVH) representing one or more object primitives within the scene, determining a set of voxels through which the ray passes, determining a set of nodes associated with the set of voxels, determining a deepest common ancestor node of the set of nodes, traversing the hierarchy starting at the deepest common ancestor node to determine a point of intersection between the ray and one of the one or more object primitives; and updating a digital image of the scene based on the determined point of intersection.

First claim

Opening claim text (preview).

What is claimed: 1 . A method of tracing a ray in an electronic image of a scene, comprising: segmenting the scene into a plurality of voxels; associating each of the voxels with a node of a bounding volume hierarchy (BVH) representing one or more object primitives within the scene; determining a set of voxels through which the ray passes; determining a set of nodes associated with the set of voxels; determining a deepest common ancestor node of the set of nodes; traversing the hierarchy starting at the deepest common ancestor node to determine a point of intersection between the ray and one of the one or more object primitives; and updating a digital image of the scene based on the determined point of intersection. 2 . The method of claim 1 , further comprising outputting the updated digital image to an output device. 3 . The method of claim 1 , wherein associating each voxel with a node comprises: determining a smallest set of bounding volumes for each voxel encompassing primitives also included in the space represented by the voxel; determining nodes in the hierarchy associated with the set of bounding volumes; determining a second deepest common ancestor of the determined nodes; and associating the voxel with the second deepest common ancestor. 4 . The method of claim 1 , wherein traversing the hierarchy comprises performing a depth first traversal of the hierarchy starting with the deepest common ancestor. 5 . The method of claim 3 , further comprising selecting the smallest set of bounding volumes from bounding volumes at a level of the bounding volume hierarchy that is below a threshold. 6 . The method of claim 1 , further comprising: storing an identification of each voxel and its associated node in a data structure; and determining a plurality of deepest common ancestors for a corresponding plurality of rays based on the data structure. 7 . The method of claim 1 , wherein the ray is a shadow ray following a path from a surface of one of the one or more object primitives toward a light source in the scene. 8 . The method of claim 8 , wherein the surface point is also a point of intersection of a second ray, the path of the shadow ray independent of an origin of the second ray. 9 . An apparatus for tracing a ray in an electronic image of a scene, comprising: a memory circuit configured to store a representation of a scene; and a processor circuit in communication with the memory unit configured to: segment the scene into a plurality of voxels; associate each of the voxels with a node of a bounding volume hierarchy (BVH) representing one or more object primitives within the scene; determine a set of voxels through which the ray passes; determine a set of nodes associated with the set of voxels; determine a deepest common ancestor node of the set of nodes; traverse the hierarchy starting at the deepest common ancestor node to determine a point of intersection between the ray and one of the one or more object primitives; and update a digital image of the scene based on the determined point of intersection. 10 . The apparatus of claim 9 , wherein the processor circuit is further configured to output the updated digital image to an output device. 11 . The apparatus of claim 9 , wherein associate each voxel with a node comprises: determine a smallest set of bounding volumes for each voxel encompassing all primitives also included in the space represented by the voxel; determine nodes in the hierarchy associated with the set of bounding volumes; determine a second deepest common ancestor of the determined nodes; and associate the voxel with the second deepest common ancestor. 12 . The apparatus of claim 9 , wherein traverse the hierarchy comprises perform a depth first traversal of the hierarchy starting with the deepest common ancestor. 13 . The apparatus of claim 11 , wherein the processor circuit is further configured to select the smallest set of bounding volumes from bounding volumes at a level of the bounding volume hierarchy below a threshold. 14 . The apparatus of claim 9 , wherein the processor circuit is further configured to: store an identification of each voxel and its associated node in a data structure; and determine a plurality of deepest common ancestors for a corresponding plurality of rays based on the data structure. 15 . The apparatus of claim 9 , wherein the ray is a shadow ray following a path from a surface point of one of the one or more object primitives toward a light source in the scene. 16 . The apparatus of claim 9 , wherein the surface point corresponds to the point of intersection of a second ray, the path of the shadow ray independent of an origin of the second ray. 17 . An apparatus for tracing a ray in an electronic image of a scene, comprising: means for segmenting the scene into a plurality of voxels; means for associating each of the voxels with a node of a bounding volume hierarchy (BVH) representing one or more object primitives within the scene; means for determining a set of voxels through which the ray passes; means for determining a set of nodes associated with the set of voxels; means for determining a deepest common ancestor node of the set of nodes; means for traversing the hierarchy starting at the deepest common ancestor node to determine a point of intersection between the ray and one of the one or more object primitives; and means for updating a digital image of the scene based on the determined point of intersection. 18 . The apparatus of claim 17 , wherein the segmenting means comprises a processing circuit, wherein the associating means comprises the processing circuit, wherein the set of voxel determining means comprises the processing circuit, wherein the set of nodes determining means comprises the processing circuit, wherein the deepest common ancestor determining means comprises the processing circuit, wherein the hierarchy determining means comprises the processing circuit, wherein the traversing means comprises the processing circuit, and wherein the updating means comprises the processing circuit. 19 . The apparatus of claim 17 , further comprising means for outputting the updated digital image to an output device. 20 . The apparatus of claim 17 , wherein the associating means comprises: means for determining a smallest set of bounding volumes for each voxel encompassing all primitives also included in the space represented by the voxel; means for determining nodes in the hierarchy associated with the set of bounding volumes; means for determining a second deepest common ancestor of the determined nodes; and means for associating the voxel with the second deepest common ancestor. 21 . The apparatus of claim 17 , wherein the traversing means comprises means for performing a depth first traversal of the hierarchy starting with the deepest common ancestor. 22 . The apparatus of claim 19 , further comprising means for selecting the smallest set of bounding volumes from bounding volumes at a level of the bounding volume hierarchy below a threshold. 23 . The apparatus of claim 17 , further comprising: means for storing an identification of each voxel and its associated node in a data structure; and means for determining a plurality of deepest common ancestors for a corresponding plurality of rays based on the data structure. 24 . The apparatus of claim 17 , wherein the r

Assignees

Inventors

Classifications

  • G06T15/06Primary

    Ray-tracing · CPC title

  • General purpose rendering architectures · CPC title

  • Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • Volume rendering · CPC title

  • Tree description, e.g. octree, quadtree · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016292908A1 cover?
Methods and systems disclosed improve the efficiency of ray tracing. In one aspect, a method of ray tracing in a digital representation of a scene includes segmenting the scene into a plurality of voxels, associating each of the voxels with a node of a bounding volume hierarchy (BVH) representing one or more object primitives within the scene, determining a set of voxels through which the ray p…
Who is the assignee on this patent?
Qualcomm Inc
What technology area does this patent fall under?
Primary CPC classification G06T15/06. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Oct 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).