Accelerating triangle visibility tests for real-time ray tracing
US-2023084570-A1 · Mar 16, 2023 · US
US11908063B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11908063-B2 |
| Application number | US-202117365043-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 1, 2021 |
| Priority date | Jul 1, 2021 |
| Publication date | Feb 20, 2024 |
| Grant date | Feb 20, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Aspects and features of the present disclosure provide a direct ray tracing operator with a low memory footprint for surfaces enriched with displacement maps. A graphics editing application can be used to manipulate displayed representations of a 3D object that include surfaces with displacement textures. The application creates an independent map of a displaced surface. The application ray-traces bounding volumes on the fly and uses the intersection of a query ray with a bounding volume to produce rendering information for a displaced surface. The rendering information can be used to generate displaced surfaces for various base surfaces without significant re-computation so that updated images can be rendered quickly, in real time or near real time.
Opening claim text (preview).
The invention claimed is: 1. A method comprising: accessing, by a rendering system, a native base surface defined by a mesh of polygons and a map of displacement values useable to render a textured surface corresponding to the native base surface; and for a polygon of the native base surface: precomputing a conservative bounding volume for the polygon, the conservative bounding volume including a portion of a displaced surface as determined by the polygon and the map of displacement values; identifying, by a displacement acceleration module of the rendering system and by using (i) the polygon of the native base surface, (ii) at least one real-time displacement parameter value, and (iii) the conservative bounding volume, a plurality of increasingly granular bounding volumes corresponding to the polygon; determining, by the displacement acceleration module, an intersection of a query ray with at least one of the plurality of increasingly granular bounding volumes to provide at least one of a 3D position or a texture coordinate usable for rendering the textured surface; and storing, by the displacement acceleration module, the at least one of the 3D position or the texture coordinate configured for rendering the textured surface using the native base surface. 2. The method of claim 1 , wherein at least one of the conservative bounding volume or the plurality of increasingly granular bounding volumes comprises an axis-aligned bounding box. 3. The method of claim 1 further comprising rendering, by a rendering system, the textured surface using at least one of the 3D position or the texture coordinate. 4. The method of claim 3 , further comprising: selectively accessing a real-time geometric quality indicator; and selectively using, by the rendering system, the real-time geometric quality indicator to render the textured surface. 5. The method of claim 3 , further comprising rendering, by the rendering system, the textured surface with a varying level of detail by rendering different levels of detail across the mesh of polygons. 6. The method of claim 1 , further comprising producing, using a mapping module, the map of displacement values, wherein the displacement values comprise minimum and maximum displacement values and the map of displacement values comprises a minmax MIP map. 7. A system comprising: a processor; and a memory device configured to store a native base surface defined by a mesh of polygons and a map of displacement values useable to render a textured surface corresponding to the native base surface, the memory device further storing a displacement acceleration module executable by the processor for performing operations comprising; precomputing a conservative bounding volume for a polygon of the mesh of polygons, the conservative bounding volume including a portion of a displaced surface; identifying, by using (i) the polygon of the native base surface, (ii) at least one real-time displacement parameter value, and (iii) the conservative bounding volume, a plurality of increasingly granular bounding volumes; producing a 3D position and a texture coordinate based on an intersection of a query ray with at least one of the plurality of increasingly granular bounding volumes; and rendering the textured surface using at least one of the 3D position or the texture coordinate for the polygon. 8. The system of claim 7 , wherein at least one of the conservative bounding volume or the plurality of increasingly granular bounding volumes comprises an axis-aligned bounding box. 9. The system of claim 7 , the operations further comprising: selectively accessing a real-time geometric quality indicator; and selectively using the real-time geometric quality indicator to render the textured surface. 10. The system of claim 7 , wherein the textured surface comprises a varying level of detail across the mesh of polygons. 11. The system of claim 7 , further comprising a mapping module configured to produce the map of displacement values. 12. The system of claim 11 , wherein the map of displacement values comprises a minmax MIP map. 13. A non-transitory computer-readable medium storing program code executable by a processor to perform operations, the operations comprising: accessing a native base surface defined by a mesh of polygons and a map of displacement values useable to render a textured surface; precomputing a conservative bounding volume for each polygon of the mesh of polygons, the conservative bounding volume including a portion of a displaced surface; a step for producing a 3D position and a texture coordinate for a polygon based on an intersection of a query ray with at least one of a plurality of increasingly granular bounding volumes corresponding to the polygon and associated with the conservative bounding volume; selectively using at least one real-time displacement parameter value to identify the at least one of the plurality of increasingly granular bounding volumes; and rendering the textured surface using at least one of the 3D position or the texture coordinate for the polygon. 14. The non-transitory computer-readable medium of claim 13 , wherein at least one of the conservative bounding volume or the plurality of increasingly granular bounding volumes comprises an axis-aligned bounding box. 15. The non-transitory computer-readable medium of claim 13 , the operations further comprising: selectively accessing a real-time geometric quality indicator; and selectively using the real-time geometric quality indicator to render the textured surface. 16. The non-transitory computer-readable medium of claim 13 , wherein the textured surface comprises a varying level of detail across the mesh of polygons. 17. The non-transitory computer-readable medium of claim 13 , wherein the map of displacement values comprises a minmax MIP map.
Texture mapping · CPC title
Ray-tracing · CPC title
Finite element generation, e.g. wire-frame surface description, {tesselation} · CPC title
Bounding box · CPC title
Level of detail · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.