Variable rate shading
First Claim
1. A method of rendering graphics in a computer device, comprising:
- determining, by a graphic processing unit (GPU), sampling rate parameter (SRP) vertex values for one or more regions of a primitive of an object based at least on an application-based source of initial SRP values or one or more tessellation factors;
outputting, by the GPU, respective vertex parameters for each vertex based on determining the SRP vertex values;
assembling, by the GPU, each vertex into the primitive based on the respective vertex parameters;
determining, by the GPU at a rasterization stage, map coordinates based on coarse scan converting the primitive of the object, the map coordinates indicating a location on a SRP map of a fragment within the primitive of the object;
identifying, by the GPU at the rasterization stage, a lookup value for the fragment within the primitive of the object based at least on the map coordinates;
calculating, by the GPU at the rasterization stage, a respective fragment variable SRP value for the fragment within the primitive of the object based at least on the lookup value; and
shading, by the GPU at a pixel shader stage, the fragment within the primitive of the object based on the respective fragment variable SRP value.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and devices for rendering graphics in a computer system include a graphical processing unit (GPU) with a flexible, dynamic, application-directed mechanism for varying the rate at which fragment shading is performed for rendering an image to a display. In particular, the described aspects include determining, at a rasterization stage, map coordinates based on coarse scan converting a primitive of an object, the map coordinates indicating a location on a sampling rate parameter (SRP) map of a fragment within the primitive of the object, and identifying a lookup value for the fragment within the primitive of the object based at least on map coordinates, and calculating a respective fragment variable SRP value for the fragment within the primitive of the object based at least on the lookup value.
27 Citations
20 Claims
-
1. A method of rendering graphics in a computer device, comprising:
-
determining, by a graphic processing unit (GPU), sampling rate parameter (SRP) vertex values for one or more regions of a primitive of an object based at least on an application-based source of initial SRP values or one or more tessellation factors; outputting, by the GPU, respective vertex parameters for each vertex based on determining the SRP vertex values; assembling, by the GPU, each vertex into the primitive based on the respective vertex parameters; determining, by the GPU at a rasterization stage, map coordinates based on coarse scan converting the primitive of the object, the map coordinates indicating a location on a SRP map of a fragment within the primitive of the object; identifying, by the GPU at the rasterization stage, a lookup value for the fragment within the primitive of the object based at least on the map coordinates; calculating, by the GPU at the rasterization stage, a respective fragment variable SRP value for the fragment within the primitive of the object based at least on the lookup value; and shading, by the GPU at a pixel shader stage, the fragment within the primitive of the object based on the respective fragment variable SRP value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer device, comprising:
-
a memory; and a graphics processing unit (GPU) in communication with the memory, wherein the GPU is configured to; determine sampling rate parameter (SRP) vertex values for one or more regions of a primitive of an object based at least on an application-based source of initial SRP values or one or more tessellation factors; output respective vertex parameters for each vertex based on determining the SRP vertex values; assemble each vertex into the primitive based on the respective vertex parameters; determine, at a rasterization stage, map coordinates based on coarse scan converting the primitive of the object, the map coordinates indicating a location on a SRP map of a fragment within the primitive of the object; identify, at the rasterization stage, a lookup value for the fragment within the primitives of the object based at least on the map coordinates; calculate, at the rasterization stage, a respective fragment variable SRP value for the fragment within the primitive of the object based at least on the lookup value; and shade, at a pixel shader stage, the fragment within the primitive of the object based on the respective fragment variable SRP value. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable medium storing computer-executable instructions executable by a processor for rendering graphics in a computer device, comprising:
-
instructions for determining, by a graphic processing unit (GPU), sampling rate parameter (SRP) vertex values for one or more regions of a primitive of an object based at least on an application-based source of initial SRP values or one or more tessellation factors; instructions for outputting, by the GPU, respective vertex parameters for each vertex based on determining the SRP vertex values; and instructions for assembling, by the GPU, each vertex into the primitive based on the respective vertex parameters; instructions for determining, at a rasterization stage, map coordinates based on coarse scan converting the primitive of the object, the map coordinates indicating a location on a SRP map of a fragment within the primitive of the object; instructions for identifying, by the GPU at the rasterization stage, a lookup value for the fragment within the primitive of the object based at least on the map coordinates; instructions for calculating, by the GPU at the rasterization stage, a respective fragment variable SRP value for the fragment within the primitive of the object based at least on the lookup value; and instructions for shading, by the GPU at a pixel shader stage, the fragment within the primitive of the object based on the respective fragment variable SRP value. - View Dependent Claims (17, 18, 19, 20)
-
Specification