IP Library › Granted Patent US 12,602,856
Granted Patent B2
US 12,602,856 · App. 18/467,651 · Granted Apr 14, 2026

Dicing oracle for texture space shading

Inventors: Joseph Daniel Garvey (San Diego, CA); Bojan Vrcelj (San Diego, CA)
Assignee: QUALCOMM Incorporated
G06T15/005G06T15/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,602,856
App. No.
18/467,651
Granted
Apr 14, 2026
Kind
B2
Abstract

This disclosure provides systems, devices, apparatus, and methods, including computer programs encoded on storage media, for a dicing oracle for texture space shading. A processor obtains an indication of a UV parameterization for each of a set of geometry units and a target number of pixels per region of the UV parameterization, where the UV parameterization includes a first set of UV coordinates for an object space. The processor renders the set of geometry units in order to obtain a second set of UV coordinates for a screen space and a set of derivatives for the second set of UV coordinates. The processor calculates a resolution for a mip region map based on the set of derivatives and the target number of pixels per region. The processor outputs an indication of the calculated resolution.

Claims (78)

1 . An apparatus for graphics processing, comprising:

memory; and

at least one processor coupled to the memory and, based on information stored in the memory, the at least one processor is configured to:

obtain an indication of a UV parameterization for each of a set of geometry units and a target number of pixels per region of the UV parameterization, wherein the UV parameterization includes a first set of UV coordinates for an object space;

render the set of geometry units in order to obtain a second set of UV coordinates for a screen space and a set of derivatives for the second set of UV coordinates;

calculate a resolution for a mip region map based on the obtained set of derivatives for the obtained second set of UV coordinates and the obtained target number of pixels per region of the UV parameterization; and

output an indication of the calculated resolution for the mip region map.

2 . The apparatus of claim 1 , wherein, to output the indication of the calculated resolution for the mip region map, the at least one processor is configured to;

transmit, to a texture space shading pipeline, the indication of the calculated resolution for the mip region map.

3 . The apparatus of claim 1 , wherein, to output the indication of the calculated resolution for the mip region map, the at least one processor is configured to;

store, in at least one of the memory, a buffer, or a cache, the indication of the calculated resolution for the mip region map.

4 . The apparatus of claim 1 , wherein the at least one processor is further configured to:

obtain an indication of the set of geometry units prior to the obtainment of the indication of the UV parameterization for each of the set of geometry units and the target number of pixels per region of the UV parameterization.

5 . The apparatus of claim 4 , wherein the at least one processor is further configured to:

generate, via a parameterization process, the UV parameterization for each of the set of geometry units.

6 . The apparatus of claim 5 , wherein, to generate the UV parameterization for each of the set of geometry units, the at least one processor is configured to:

unwrap each of the set of geometry units.

7 . The apparatus of claim 1 , wherein the set of geometry units comprises at least one of a set of meshlets or a set of triangles.

8 . The apparatus of claim 1 , wherein the at least one processor is further configured to:

determine that each of the set of geometry units will be visible when drawn on a screen, wherein, to render the set of geometry units, the processor is configured to:

render the set of geometry units to the screen based on the determination that each of the set of geometry units will be visible when drawn on the screen.

9 . The apparatus of claim 1 , wherein, to render the set of geometry units in order to obtain the set of derivatives for the second set of UV coordinates, the at least one processor is configured to:

perform a barycentric interpolation on the set of geometry units.

10 . The apparatus of claim 1 , wherein, to calculate the resolution for the mip region map, the at least one processor is further configured to:

dice the set of geometry units into a set of shadels based on the obtained set of derivatives and the obtained target number of pixels; and

calculate the resolution for the mip region map further based on a view perspective for each of the set of shadels scaled to the second set of UV coordinates.

11 . The apparatus of claim 1 , wherein, to obtain the indication of the UV parameterization for each of the set of geometry units and the target number of pixels per region of the UV parameterization, the at least one processor is configured to:

obtain the indication of the UV parameterization at a first time instance; and

obtain the target number of pixels at a second time instance that is different from the first time instance, and wherein, to calculate the resolution for the mip region map, the at least one processor is configured to:

calculate the resolution for the mip region map at the second time instance or a third time instance that occurs after the second time instance.

12 . The apparatus of claim 1 , wherein, to render the set of geometry units in order to obtain the second set of UV coordinates for the screen space, the at least one processor is configured to:

perform a rasterization process on the first set of UV coordinates; and

render the set of geometry units in a world space based on the performed rasterization process wherein the world space is different than the object space and the screen space.

13 . The apparatus of claim 1 , wherein, to calculate the resolution for the mip region map, the at least one processor is configured to:

calculate the resolution for the mip region map further based on a distortion factor.

14 . The apparatus of claim 1 , wherein the apparatus is a wireless communication device comprising at least one of a transceiver or an antenna coupled to the processor.

15 . A method of graphics processing, comprising:

obtaining an indication of a UV parameterization for each of a set of geometry units and a target number of pixels per region of the UV parameterization, wherein the UV parameterization includes a first set of UV coordinates for an object space;

rendering the set of geometry units in order to obtain a second set of UV coordinates for a screen space and a set of derivatives for the second set of UV coordinates;

calculating a resolution for a mip region map based on the obtained set of derivatives for the obtained second set of UV coordinates and the obtained target number of pixels per region of the UV parameterization; and

outputting an indication of the calculated resolution for the mip region map.

16 . The method of claim 15 , wherein outputting the indication of the calculated resolution for the mip region map comprises:

transmitting, to a texture space shading pipeline, the indication of the calculated resolution for the mip region map.

17 . The method of claim 15 , wherein outputting the indication of the calculated resolution for the mip region map comprises:

storing, in at least one of a memory, a buffer, or a cache, the indication of the calculated resolution for the mip region map.

18 . The method of claim 15 , further comprising:

obtaining an indication of the set of geometry units prior to the obtainment of the indication of the UV parameterization for each of the set of geometry units and the target number of pixels per region of the UV parameterization.

19 . The method of claim 18 , further comprising:

generating, via a parameterization process, the UV parameterization for each of the set of geometry units.

20 . The method of claim 19 , wherein generating the UV parameterization for each of the set of geometry units comprises:

unwrapping each of the set of geometry units.

21 . The method of claim 15 , wherein the set of geometry units comprises at least one of a set of meshlets or a set of triangles.

22 . The method of claim 15 , further comprising:

determining that each of the set of geometry units will be visible when drawn on a screen, wherein rendering the set of geometry units comprises:

rendering the set of geometry units to the screen based on the determination that each of the set of geometry units will be visible when drawn on the screen.

23 . The method of claim 15 , wherein rendering the set of geometry units in order to obtain the set of derivatives for the second set of UV coordinates comprises:

performing a barycentric interpolation on the set of geometry units.

24 . The method of claim 15 , wherein calculating the resolution for the mip region map further comprises:

dicing the set of geometry units into a set of shadels based on the obtained set of derivatives and the obtained target number of pixels; and

calculating the resolution for the mip region map further based on a view perspective for each of the set of shadels scaled to the second set of UV coordinates.

25 . The method of claim 15 , wherein obtaining the indication of the UV parameterization for each of the set of geometry units and the target number of pixels per region of the UV parameterization comprises:

obtaining the indication of the UV parameterization at a first time instance; and

obtaining the target number of pixels at a second time instance that is different than the first time instance, wherein calculating the resolution for the mip region map further comprises:

calculating the resolution for the mip region map at the second time instance or a third time instance that occurs after the second time instance.

26 . The method of claim 15 , wherein rendering the set of geometry units in order to obtain the second set of UV coordinates for the screen space comprises:

performing a rasterization process on the first set of UV coordinates; and

rendering the set of geometry units in a world space based on the performed rasterization process wherein the world space is different than the object space and the screen space.

27 . The method of claim 15 , wherein calculating the resolution for the mip region map comprises:

calculating the resolution for the mip region map further based on a distortion factor.

28 . A non-transitory computer-readable medium storing computer executable code, the computer executable code, when executed a processor, causes the processor to:

obtain an indication of a UV parameterization for each of a set of geometry units and a target number of pixels per region of the UV parameterization, wherein the UV parameterization includes a first set of UV coordinates for an object space;

render the set of geometry units in order to obtain a second set of UV coordinates for a screen space and a set of derivatives for the second set of UV coordinates;

calculate a resolution for a mip region map based on the obtained set of derivatives for the obtained second set of UV coordinates and the obtained target number of pixels per region of the UV parameterization; and

output an indication of the calculated resolution for the mip region map.

29 . The non-transitory computer-readable medium of claim 28 , wherein the code, when executed by the processor, further causes the processor to:

obtain an indication of the set of geometry units prior to the obtainment of the indication of the UV parameterization for each of the set of geometry units and the target number of pixels per region of the UV parameterization.

30 . The non-transitory computer-readable medium of claim 29 , wherein the code, when executed by the processor, further causes the processor to:

generate, via a parameterization process, the UV parameterization for each of the set of geometry units.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2023
From: GARVEY, JOSEPH DANIEL; VRCELJ, BOJAN
To: QUALCOMM INCORPORATED
Reel/Frame 065216/0713 →
Continuity (1)
Related Publication 20250095265A1 · Mar 20, 2025
References Cited (53)
US 6714195B1 · Ezra et al. · 2004 [cited by applicant]
US 7164426B1 · Duluk, Jr. et al. · 2007 [cited by applicant]
US 7382377B1 · Everitt et al. · 2008 [cited by applicant]
US 8773448B2 · Lalonde et al. · 2014 [cited by applicant]
US 10198860B1 · Smith · 2019 [cited by examiner]
US 12475638B2 · Fanello · 2025 [cited by examiner]
US 20040130552A1 · Duluk et al. · 2004 [cited by applicant]
US 20070171234A1 · Crawfis · 2007 [cited by examiner]
US 20070220525A1 · State et al. · 2007 [cited by applicant]
US 20140267346A1 · Ren · 2014 [cited by examiner]
US 20140333621A1 · Hillesland · 2014 [cited by examiner]
US 20150379763A1 · Liktor · 2015 [cited by examiner]
US 20160048999A1 · Patney et al. · 2016 [cited by applicant]
US 20160049000A1 · Patney · 2016 [cited by examiner]
US 20160275920A1 · Apodaca et al. · 2016 [cited by applicant]
US 20170221177A1 · Worcester et al. · 2017 [cited by applicant]
US 20180144535A1 · Ford et al. · 2018 [cited by applicant]
US 20180165786A1 · Bourd et al. · 2018 [cited by applicant]
US 20190012829A1 · Engh-Halstvedt et al. · 2019 [cited by applicant]
US 20190066370A1 · Schmalstieg et al. · 2019 [cited by applicant]
US 20200027260A1 · Harris · 2020 [cited by examiner]
US 20200311042A1 · Doyle · 2020 [cited by applicant]
US 20200364088A1 · Ashwathnarayan et al. · 2020 [cited by applicant]
US 20200410631A1 · Doyle et al. · 2020 [cited by applicant]
US 20210118214A1 · Baker et al. · 2021 [cited by applicant]
US 20210209717A1 · Du et al. · 2021 [cited by applicant]
US 20210304483A1 · Garvey et al. · 2021 [cited by applicant]
US 20220319094A1 · Nourai et al. · 2022 [cited by applicant]
US 20220327762A1 · Panteleev · 2022 [cited by applicant]
US 20240320782A1 · Tessari · 2024 [cited by applicant]
US 20250095266A1 · Garvey et al. · 2025 [cited by applicant]
Baker D., et al., “Generalized Decoupled and Object Space Shading System”, Eurographics Symposium on Rendering, 2022, pp. 134-143. [cited by applicant]
Burley B., et al., “Ptex: Per-Face Texture Mapping for Production Rendering”, Eurographics Symposium on Rendering, vol. 27, No. 4, 2008, 10 Pages. [cited by applicant]
Clarberg P., et al., “AMFS: Adaptive Multi-Frequency Shading for Future Graphics Processors”, ACM Transactions on Graphics, Proceedings of SIGGRAPH 2014, vol. 33, No. 4, Aug. 2014, 12 Pages. [cited by applicant]
Fascione L., et al., “Manuka: A batch-Shading Architecture for Spectral Path Tracing in Movie Production”, ACM Transactions on Graphics, vol. 37, No. 3, Published on Aug. 2018, pp. 1-18. [cited by applicant]
Gierach J., et al., “Applying DirectX Sampler Feedback: Texture Space Shading and Streaming with DirectStorage”, Intel Corporation, 2021, 62 Pages. [cited by applicant]
Hillesland K.E., et al., “Texel Shading”, Advanced Micro Devices, Inc., Eurographics, 2016, pp. 74-76. [cited by applicant]
Hladky J., et al., “SnakeBinning: Efficient Temporally Coherent Triangle Packing for Shading Streaming”, Computer Graphics Forum, Eurographics 2021, vol. 40, No. 2, May 2021, pp. 476-488. [cited by applicant]
Hladky J., et al., “QuadStream: A Quad-Based Scene Streaming Architecture for Novel Viewpoint Reconstruction”, Association for Computing Machinery Transactions on Graphics, vol. 41, No. 6, Published on Dec. 2022, pp. 1-… [cited by applicant]
Hladky J., et al., “Tessellated Shading Streaming”, Eurographics Symposium on Rendering 2019, In Computer Graphics Forum, vol. 38, No. 4, 2019, 12 Pages. [cited by applicant]
Levy B., et al., “Least Squares Conformal Maps for Automatic Texture Atlas Generation”, ACM Transactions on Graphics, vol. 21, No. 3, Jul. 1, 2002, pp. 362-371. [cited by applicant]
Mueller J.H., et al., “Shading Atlas Streaming”, ACM Transactions on Graphics, ACM, NY, US, vol. 37, No. 6, Dec. 4, 2018, Published on Nov. 2018, pp. 1-16, XP058686879, ISSN: 0730-0301, Section 3 System Overview, Sectio… [cited by applicant]
Schied C., et al., “Deferred Attribute Interpolation for Memory-Efficient Deferred Shading”, HPG '15: Proceedings of the 7th Conference on High-Performance Graphics, Aug. 7, 2015, pp. 43-49. [cited by applicant]
Stengel M., et al., “A Distributed, Decoupled System for Losslessly Streaming Dynamic Light Probes to Thin Clients”, arXiv:2103.05875v1 [cs.DC], Mar. 10, 2021, pp. 1-13. [cited by applicant]
Weinstein D., “Nvidia Cloudxr™”, Nvidia, Dec. 19, 2019, 30 Pages. [cited by applicant]
Burns C.A., et al., “A Lazy Object-Space Shading Architecture With Decoupled Sampling”, High Performance Graphics, Eurographics Association, P. O. Box 16Aire-la-Villech-1288 Switzerland, Jun. 25, 2010, pp 19-28, XP05837… [cited by applicant]
Cook R.L., et al., “The Reyes Image Rendering Architecture”, Computer Graphics, ACM, US, vol. 21, No. 4, Aug. 1987, pp. 95-102, Jul. 1987, XP058231748, section 2.3 Micropolygons. [cited by applicant]
Fisher M., et al., “DiagSplit: Parallel, Crack-Free, Adaptive Tessellation for Micropolygon Rendering”, SIGGRAPH Asia '09: ACM SIGGRAPH Asia 2009 papers, ACM Press, New York, USA, ACM Transactions on Graphics, vol. 28, … [cited by applicant]
GILL S., et al., “Polygonal Meshing for 3D Stereo Video Sensor Data”, 2008 Canadian Conference on Computer and Robot Vision (CRV '08), IEEE, Piscataway, NJ, USA, May 28, 2008, pp. 278-285, XP031284926, p. 279, right-han… [cited by applicant]
International Search Report and Written Opinion—PCT/US2024/044654—ISA/EPO—Nov. 28, 2024—11 pages. [cited by applicant]
Neff T., et al., “Meshlets and How to Shade Them: A Study on Texture-Space Shading”, Eurographics, vol. 41, No. 2, May 24, 2022, pp. 277-287, XP093013576, section 3 Meshlet shading atlas, figure 3. [cited by applicant]
Salmijarvi S., “Efficient Texture Space Shading Using Sampling Location Feedback”, Aalto University, Dec. 20, 2020, 64 Pages, XP002809087, p. 39-p. 41. [cited by applicant]
Molnar S., et al., “A Sorting Classification of Parallel Rendering”, IEEE Computer Graphics and Applications, vol. 14, No. 4, Jul. 1994, Aug. 6, 2002, pp. 23-32. [cited by applicant]