Method and apparatus for providing polygon pixel sub-sample information using incremental means
First Claim
1. A method of determining a percentage of at least one pixel on a graphics system display screen that is covered by a primitive to be displayed on the display screen, the method comprising the steps of:
- (a) apportioning the at least one pixel into a plurality of sub-scan lines that define a plurality of subsample points for the at least one pixel, each of the plurality of subsample points being located on a corresponding one of the plurality of sub-scan lines;
(b) stepping between the plurality of sub-scan lines of the at least one pixel;
(c) determining, at each one of the plurality of sub-scan lines, whether the corresponding subsample point on the one of the plurality of sub-scan lines is covered by the primitive; and
(d) approximating the percentage of the at least one pixel covered by the primitive based upon the number of the plurality of subsample points of the at least one pixel that are covered by the primitive.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for generating a mask identifying a number of subpixels that are covered by a primitive includes the process of apportioning an image, comprising a plurality of scan lines into a plurality of sub-scan lines, such that a number of sub-scan lines crosses each pixel. A sample point is placed on at least one of the sub-scan lines. To determine the number of samples that are covered by a primitive, edge stepping is used to step along each edge of the primitive, generating a sub-scan line coordinate for the edge. The edge stepping hardware is used for stepping either on a sub-scan line granularity, for operation in anti-aliased mode, or on a scan line granularity, for operation in aliased mode. In anti-aliased mode, as each edge sub-scan line coordinate is generated, it is compared against the coordinates of a sample point on that sub-scan line, to determine whether or not that sample point is covered by the primitive. A mask is generated for each pixel, with each bit of the mask corresponding to one of the sub-scan line samples. A bit in the mask is set if the subsample is covered by the primitive. Thus, a mask representing covered subsamples is provided by using incremental techniques to approximate pixel coverage without the complex hardware and lookup tables used in the prior art.
213 Citations
22 Claims
-
1. A method of determining a percentage of at least one pixel on a graphics system display screen that is covered by a primitive to be displayed on the display screen, the method comprising the steps of:
-
(a) apportioning the at least one pixel into a plurality of sub-scan lines that define a plurality of subsample points for the at least one pixel, each of the plurality of subsample points being located on a corresponding one of the plurality of sub-scan lines; (b) stepping between the plurality of sub-scan lines of the at least one pixel; (c) determining, at each one of the plurality of sub-scan lines, whether the corresponding subsample point on the one of the plurality of sub-scan lines is covered by the primitive; and (d) approximating the percentage of the at least one pixel covered by the primitive based upon the number of the plurality of subsample points of the at least one pixel that are covered by the primitive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a graphics system capable of rendering a primitive, an edge stepper for generating coordinate data for display pixels on a display device that represent the primitive, the edge stepper receiving edge equation data including a first and second pair of endpoint coordinates and a slope value for at least one edge of the primitive to be rendered, the edge stepper comprising:
an adder, for incrementing one of the first endpoint coordinates by an increment value to provide an edge x and an edge y coordinate of the at least one edge of the primitive being rendered, wherein the increment value is less than a size of a display pixel in one mode of operation. - View Dependent Claims (10, 11, 12, 13)
-
14. A graphics device for displaying an image on a display device based on data received from a host processor, the display device comprising a plurality of scan lines, each of the scan lines comprising a plurality of pixels, the graphics device comprising:
-
a graphics accelerator, coupled to receive data from the host processor representing a plurality of graphics primitives, the graphics accelerator generating edge equations for each primitive, the edge equations including, for at least one edge of the primitive, endpoint coordinate data identifying endpoints of the at least one edge of the primitive and slope data identifying a rate of change of the at least one edge; a scan converter, coupled to the graphics accelerator, that translates the edge equations into coordinates of pixels of the display device, the scan converter including an edge stepper to step from one of the coordinates of one of the endpoints of the at least one edge to another endpoint of the at least one edge to generate pixel coordinates for the edge, wherein a size of step of the edge stepper is less than a size of a display pixel. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A method of simplifying a mathematical calculation in an antialiasing operation for antialiasing an image displayed on a display screen, the mathematical calculation operating on at least one piece of information relating to the image, the information having an integer component and a fractional component, the method including steps of:
-
scaling the image by an amount such that the at least one piece of information has only an integer component and does not have a fractional component; and performing the mathematical calculation during the antialiasing operation based on the at least one piece of information that has only an integer component.
-
-
22. A method of simplifying a mathematical calculation in an antialiasing operation for antialiasing an image displayed on a display screen, the mathematical calculation operating on at least one piece of information relating to the image, the information having an integer component and a fractional component, the method including a step of:
-
scaling the image by an amount such that the at least one piece of information operated upon by the mathematical calculation during the antialiasing operation has only an integer component and does not have a fractional component; wherein the method of simplifying a mathematical calculation is employed in a multi-point sampling anti-aliasing operation, wherein the display screen includes a plurality of pixels and wherein the at least one piece of information relating to the image comprises at least one subsample point for each of the plurality of pixels, the at least one subsample point lying on a non-integer pixel boundary of the display screen, wherein the step of scaling provides a scaled representation of the image in which each of the plurality of subsamples falls on an integer address boundary of the display screen.
-
Specification