IP Library Granted Patent US 10,424,074
Granted Patent B1
US 10,424,074 · App. 16/027,136 · Granted Sep 24, 2019

Method and apparatus for obtaining sampled positions of texturing operations

Inventors: Yury Uralsky (Santa Clara, CA); Henry Packard Moreton (Woodside, CA); Eric Brian Lum (Fremont, CA); Jonathan J. Dunaisky (Fort Collins, CO); Steven James Heinrich (Madison, AL); Stefano Pescador (Dale, TX); Shirish Gadre (Fremont, CA); Michael Alan Fetterman (Boxborough, MA)
Assignee: NVIDIA Corporation
G06T7/44G06T7/45G06T7/49G06T7/60
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 10,424,074
App. No.
16/027,136
Granted
Sep 24, 2019
Kind
B1
Abstract

Methods and apparatuses are disclosed for reporting texture footprint information. A texture footprint identifies the portion of a texture that will be utilized in rendering a pixel in a scene. The disclosed methods and apparatuses advantageously improve system efficiency in decoupled shading systems by first identifying which texels in a given texture map are needed for subsequently rendering a scene. Therefore, the number of texels that are generated and stored may be reduced to include the identified texels. Texels that are not identified need not be rendered and/or stored.

Claims (32)

1. A method for reporting a texture footprint, comprising:

receiving, from a shader program, a texture footprint query request that includes texture map coordinates, wherein the texture footprint query request is associated with a pixel in screen space covered by rasterized geometry;

identifying texels comprising a texture footprint for a texture map filtering operation that corresponds to the texture footprint query request; and

transmitting, to the shader program, query result information comprising the texture footprint,

wherein transmitting comprises storing the query result information in a memory circuit that is accessible to the shader program.

2. The method of claim 1 , wherein the texture map coordinates include two dimensions.

3. The method of claim 1 , wherein the texture map coordinates include three dimensions.

4. The method of claim 1 , wherein the texture map coordinates are configured to identify a location within a cube-map.

5. The method of claim 1 , wherein the texture footprint query request further comprises a gradient at each of the texture map coordinates.

6. The method of claim 1 , wherein the texture footprint query request further comprises a texture map level of detail parameter corresponding to the texture footprint.

7. The method of claim 1 , wherein the texture footprint query request further comprises a resolution specification for the query result information.

8. The method of claim 7 , wherein the query result information comprises a bitmap generated to indicate the texture footprint according to the resolution specification and a coarsening factor generated to indicate a scale having a value of one or more texels per bit of the bitmap in a dimension of the resolution specification.

9. The method of claim 8 , wherein the scale is calculated to encompass the texture footprint in the dimension based on the resolution specification.

10. The method of claim 1 , wherein the query result information comprises a fixed length bitmap, and each bit of the fixed length bitmap represents a region of one or more texels covered by the texture footprint.

11. The method of claim 10 , wherein the fixed length bitmap comprises sixty-four bits.

12. The method of claim 11 , wherein the sixty-four bits indicate a set of texels organized as one of 8-by-8 texels, 16-by-4 texels, 32-by-2 texels, or 4-by-4-by-4 texels.

13. The method of claim 1 , wherein the query result information comprises an anchor point calculated to indicate a location for the texture footprint within a texture map coordinate space.

14. The method of claim 1 , wherein identifying comprises projecting a texture sampling region into texel space at the texture map coordinates, and marking each texel covered by the projected texture sampling region.

15. A processing unit, configured to:

receive, from a shader program, a texture footprint query request that includes texture map coordinates, wherein the texture footprint query request is associated with a pixel in screen space covered by rasterized geometry;

identify texels comprising a texture footprint for a texture map filtering operation that corresponds to the texture footprint query request; and

transmit, to the shader program, query result information comprising the texture footprint,

wherein to transmit, the processing unit stores the query result information in a memory circuit that is accessible to the shader program.

16. The processing unit of claim 15 , wherein the texture map coordinates include one of: two dimensions, three dimensions, a location within a cube-map.

17. The processing unit of claim 15 , wherein the texture footprint query request further comprises at least one of: a gradient at each of the texture map coordinates; a texture map level of detail parameter corresponding to the texture footprint; or a resolution specification for the query result information.

18. The processing unit of claim 15 , wherein the query result information comprises at least one of: a fixed length bitmap with each bit of the fixed length bitmap configured to represent a region of one or more texels covered by the texture footprint; or an anchor point calculated to indicate a location for the texture footprint within a texture map coordinate space.

19. The processing unit of claim 15 , wherein identifying comprises projecting a texture sampling region into texel space at the texture map coordinates, and marking each texel covered by the projected texture sampling region.

20. A non-transitory, computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to:

receive, from a shader program, a texture footprint query request that includes texture map coordinates, wherein the texture footprint query request is associated with a pixel in screen space covered by rasterized geometry;

identify texels comprising a texture footprint for a texture map filtering operation that corresponds to the texture footprint query request; and

transmit, to the shader program, query result information comprising the texture footprint,

wherein to transmit, the GPU stores the query result information in a memory circuit that is accessible to the shader program.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2018
From: URALSKY, YURY; MORETON, HENRY PACKARD; LUM, ERIC BRIAN; DUNAISKY, JONATHAN J.; HEINRICH, STEVEN JAMES; PESCADOR, STEFANO; GADRE, SHIRISH; FETTERMAN, MICHAEL ALAN
To: NVIDIA CORPORATION
Reel/Frame 047612/0676 →
Cited By (3)
US 12,197,281 US 12,347,508 US 12,602,335