Antialiased imaging with improved pixel supersampling
First Claim
1. A raster system for generating antialiased display data within an image processing system, wherein said image processing system includes a scan conversion subsystem for generating pixel packets which indicate polygon coverage within a pixel, wherein the pixel comprises a plurality of supersamples, comprising:
- a first image memory for storing a first color value;
a second image memory for storing a second color value;
means for storing pixel memory that indicates a current state of the pixel, wherein said pixel memory comprises a region mask having a plurality of fields, each field being associated with a unique one of said plurality of supersamples, wherein when the color value of each supersample is either said first color value or said second color value, then each field associated with a supersample having said first color value stores an identifier that identifies said first image memory, and each field associated with a supersample having said second color value stores an identifier that identifies said second image memory; and
an image processor, coupled to receive a pixel packet from the scan conversion subsystem, and further coupled to update said pixel memory, wherein said image processor generates antialiased display data based on said pixel memory, and wherein said image processor includes,means for determining a new pixel state based on said current state of the pixel and said pixel packet, andmeans for updating said pixel memory based on said new pixel state.
3 Assignments
0 Petitions
Accused Products
Abstract
An image processing system is described that receives polygonal image data at the direction of a processor and develops antialiased image data for display on a raster scanned display. In particular, the image system includes a scan convertor for converting the polygonal image data into pixel data, which includes pixel screen coordinates and at least one color value for each polygon covered pixel of the pixel data and a supersample coverage mask indicating an extent of polygon coverage within each polygon covered pixel. The image system also includes a raster system having at least one image processor for receiving the pixel data for each pixel, for developing a region mask based on the supersample coverage mask, and for storing the color value in association with the region mask as anitialiased display data in an image memory in communication with the image processor based on the pixel screen coordinates. The region mask indicates one or more, geographical regions of supersamples within each pixel covered by one or more polygons and indicates a color value stored in the image memory to be assigned to the supersamples in a region. This requires only a single color value for supersamples within a region of a covered pixel to be stored in the image memory. The image system can also be configured to develop and store Z-values, alpha values, stencil values, and texture values for each pixel for storage in the image memory in association with the region mask.
115 Citations
25 Claims
-
1. A raster system for generating antialiased display data within an image processing system, wherein said image processing system includes a scan conversion subsystem for generating pixel packets which indicate polygon coverage within a pixel, wherein the pixel comprises a plurality of supersamples, comprising:
-
a first image memory for storing a first color value; a second image memory for storing a second color value; means for storing pixel memory that indicates a current state of the pixel, wherein said pixel memory comprises a region mask having a plurality of fields, each field being associated with a unique one of said plurality of supersamples, wherein when the color value of each supersample is either said first color value or said second color value, then each field associated with a supersample having said first color value stores an identifier that identifies said first image memory, and each field associated with a supersample having said second color value stores an identifier that identifies said second image memory; and an image processor, coupled to receive a pixel packet from the scan conversion subsystem, and further coupled to update said pixel memory, wherein said image processor generates antialiased display data based on said pixel memory, and wherein said image processor includes, means for determining a new pixel state based on said current state of the pixel and said pixel packet, and means for updating said pixel memory based on said new pixel state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for generating antialiased display data comprising:
-
(1) storing a pixel memory that indicates a current state of a pixel that comprises a plurality of supersamples, wherein said pixel memory comprises a region mask having a plurality of fields, each field being associated with a unique one of said supersamples; (2) receiving a pixel packet, wherein said pixel packet indicates polygon coverage within said pixel, and a first color value; (3) storing a second color value in an image memory, wherein said second color value is a function of said first color value; (4) determining a new pixel state based on said current pixel state and said pixel packet; (5) updating said pixel memory based on said new pixel state, wherein if said new pixel state is a state in which the color value of each supersample is either said second color value or a third color value, each of the fields associated with a supersample having said second color value stores an identifier that identifies said image memory; and (6) generating antialiased display data based on said pixel memory. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer graphics system comprising:
-
a host processor, wherein said host processor generates world coordinate based graphical data; a geometry subsystem, coupled to receive said world coordinate based graphical data, wherein said geometry subsystem converts said world coordinate based graphical data to screen space coordinate data; a scan conversion subsystem, coupled to receive said screen space coordinate data, wherein said scan conversion subsystem generates pixel packets based on said screen space coordinate data; a raster system including, a first image memory for storing a first color value; a second image memory for storing a second color value; means for storing a pixel memory corresponding to a pixel comprising a plurality of supersamples, said pixel memory indicating a current state of said pixel and comprising a region mask having a plurality of fields, each field being associated with a unique one of said supersamples, wherein when the color value of each supersample is either said first color value or said second color value, then each field associated with a supersample having said first color value stores an identifier that identifies said first image memory, and each field associated with a supersample having said second color value stores an identifier that identifies said second image memory, and an image processor, coupled to receive a pixel packet from the scan conversion subsystem, and further coupled to update said pixel memory, wherein said image processor generates antialiased display data based on said pixel memory, and wherein said image processor includes, means for determining a new pixel state based on said current pixel state and said pixel packet, and means for updating said pixel memory based on said new pixel state; and a display subsystem, coupled to receive said antialiased display data.
-
-
21. A method, comprising the steps of:
-
initializing a region mask that is used to indicate a state of a pixel comprising a plurality of supersamples, wherein said region mask comprises a plurality of fields equal in number to said plurality of supersamples, wherein each of said plurality of fields is associated with a unique one of said supersamples; generating a first coverage mask associated with said pixel and with a first polygon image having a color, wherein said first coverage mask indicates the supersamples covered by said first polygon image; storing a first color value in a first image memory, wherein said first color value is a function of at least said color of said first polygon image; updating said region mask based on said first coverage mask, wherein after said region mask is updated said region mask contains data identifying said supersamples covered by said first polygon image; generating a second coverage mask associated with said pixel and with a second polygon image having a color, wherein said second coverage mask identifies the supersamples covered by said second polygon image; storing a second color value in a second image memory, wherein said second color value is a function of at least said color of said second polygon image; and updating said region mask based on said second coverage mask, wherein after said region mask is updated said region mask associates a first group of said supersamples with said first color value and associates a second group of said supersamples with said second color value. - View Dependent Claims (22, 23, 24, 25)
-
Specification