Target independent rasterization
First Claim
Patent Images
1. A computer-storage device having computer-executable instructions embodied thereon for performing a method of rendering antialiased two-dimensional graphics, the method comprising:
- converting scene data into an input coverage mask by generating a set of geometric shapes tessellated from objects in the scene data;
receiving, by an application program interface (API), a first instruction that defines a render-target storage value in a graphics pipeline, wherein the render-target storage value is an amount of memory allocated to a rendered image;
receiving, by the API, a second instruction that defines the sampling rate for a rasterizer in the graphics pipeline, wherein the sampling rate is defined by the second instruction independently from the render-target storage value and the render-target storage value is defined by the first instruction independently from the sampling rate, and wherein the sampling rate defines a number of sub-pixels that the rasterizer assigns colors;
receiving a third instruction to configure a pixel shader to process the input coverage mask through the graphics pipeline based on the amount of memory allocated and the number of sub-pixels that the rasterizer assigns colors, wherein the pixel shader and an alpha blender are configured to count a number of bit sets in the input coverage mask, normalize the results to a real number, and add the real number to current contents of a render target;
wherein at least the first and second instructions comprise configuration instructions for one or more components in the graphics pipeline; and
communicating the input coverage mask to the graphics pipeline.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer-storage media for target independent rasterization of an image. The target is the memory allocated for a rendered image within a graphics pipeline. Embodiments of the present invention allow the rasterization process'"'"'s sampling rate to be specified independently from the memory allocated for the rendered image. Embodiments of the present invention also allow the rasterization process to be executed at a rate that does not correspond to the memory allocated for the rendered target.
-
Citations
20 Claims
-
1. A computer-storage device having computer-executable instructions embodied thereon for performing a method of rendering antialiased two-dimensional graphics, the method comprising:
-
converting scene data into an input coverage mask by generating a set of geometric shapes tessellated from objects in the scene data; receiving, by an application program interface (API), a first instruction that defines a render-target storage value in a graphics pipeline, wherein the render-target storage value is an amount of memory allocated to a rendered image; receiving, by the API, a second instruction that defines the sampling rate for a rasterizer in the graphics pipeline, wherein the sampling rate is defined by the second instruction independently from the render-target storage value and the render-target storage value is defined by the first instruction independently from the sampling rate, and wherein the sampling rate defines a number of sub-pixels that the rasterizer assigns colors; receiving a third instruction to configure a pixel shader to process the input coverage mask through the graphics pipeline based on the amount of memory allocated and the number of sub-pixels that the rasterizer assigns colors, wherein the pixel shader and an alpha blender are configured to count a number of bit sets in the input coverage mask, normalize the results to a real number, and add the real number to current contents of a render target; wherein at least the first and second instructions comprise configuration instructions for one or more components in the graphics pipeline; and communicating the input coverage mask to the graphics pipeline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of instructing a graphic processing unit to perform target independent rasterization, the method comprising:
-
receiving a first instruction that defines a render-target storage value in a graphics pipeline running in a graphical processing unit, wherein the render-target storage value is defined by the first instruction independently from a sampling rate; receiving a second instruction that defines the sampling rate for a rasterizer in the graphics pipeline in the graphical processing unit, wherein the sampling rate is defined independently from the render-target storage value and the sampling rate defines a number of sub-pixels that the rasterizer assigns colors in the rendering of the image; and configuring a pixel shader to process an input coverage mask through the graphics pipeline based on the amount of memory allocated and the number of sub-pixels that the rasterizer assigns colors, wherein the pixel shader and an alpha blender are configured to count a number of bit sets in the input coverage mask, normalize results to a real number, and add the real number to current contents of a render target; wherein at least the first and second instructions comprise configuration instructions for one or more components in the graphics pipeline. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A system comprising one or more processors configured to perform a method of instructing a graphic processing unit to perform target independent rasterization, the method comprising:
-
receiving a first instruction that defines a render-target storage value in a graphics pipeline running in a graphical processing unit, wherein the render-target storage value is defined by the first instruction independently from a sampling rate; receiving a second instruction that defines the sampling rate for a rasterizer in the graphics pipeline in the graphical processing unit, wherein the sampling rate is defined independently from the render-target storage value and the sampling rate defines a number of sub-pixels that the rasterizer assigns colors in the rendering of the image; and configuring a pixel shader to process an input coverage mask through the graphics pipeline based on the amount of memory allocated and the number of sub-pixels that the rasterizer assigns colors, wherein the pixel shader and an alpha blender are configured to count a number of bit sets in the input coverage mask, normalize results to a real number, and add the real number to current contents of a render target; wherein at least the first and second instructions comprise configuration instructions for one or more components in the graphics pipeline. - View Dependent Claims (18, 19, 20)
-
Specification