Method and apparatus for sequencing composite operations of pixels
First Claim
1. An apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, said apparatus further comprising:
- input means connected to the CPU for receiving data defining the graphic object;
translating means connected to the input means for translating the graphic object data to graphic image pixel data which defines the image of the graphic object;
retrieval means connected to the frame buffer for retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered;
a pixel buffer;
comparison means comprising a first and second input respectively connected to the translating means, the pixel buffer and the retrieval means for receiving graphic image pixel data and the corresponding frame buffer pixel data, and a first and second output respectively connected to the frame buffer and the pixel buffer, said comparison means comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, said comparison means comprising;
if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data,if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, a first blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer, andif the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, a second blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer;
if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data,if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, means for discarding the frame buffer pixel data and means for outputting the graphic image pixel data to the frame buffer, andif the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, means for pushing the frame buffer pixel data into the pixel buffer and means for outputting the graphic image pixel data to the frame buffer;
if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data,if the subpixel mask of the frame buffer pixel data, occludes the subpixel mask of the graphic image pixel data, means for discarding the graphic image pixel data, andif the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, means for pushing the graphic image pixel data into the pixel buffer;
when all graphic image pixel data has been compared to corresponding frame buffer pixel data, means for reading the pixel buffer data from the pixel buffer for input to the comparison means wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, a third blending means to blend the frame buffer pixel data and the pixel buffer data;
display control means connected to the frame buffer and the graphic display to read the modified pixel data stored in the frame buffer and enable the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display;
whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided.
2 Assignments
0 Petitions
Accused Products
Abstract
A pixel buffer separate from the frame buffer is provided to store selected pixel information, including XYZ values, sub-pixel coverage, and a color value for a graphic object. The frame buffer stores pixel information for each pixel on the screen, including sub-pixel coverage. During the rendering process, the pixel information for each graphic object is computed and stored in the frame buffer. However, as subsequent pixel information for the same XY pixel locations are computed, it may be impossible to combine the two separate sets of pixel information into a single set of pixel information while maintaining the pixel information required to combine the single set of pixel information with subsequent pixel information to be rendered to the same XY location. To maintain the pixel information needed, the first set of pixel information is stored in the frame buffer and the second set of pixel information is stored in the pixel buffer. The second set of pixel information stored in the pixel buffer is then subsequently reprocessed. The pixel buffer permits the processing of selected pixel information to be postponed until additional pixel information is available which may simplify the processing of the pixels shared in the pixel buffer. In addition, this pixel information stored in the pixel buffer may be made available to a general purpose processor which can perform selective complex computations.
19 Citations
17 Claims
-
1. An apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, said apparatus further comprising:
-
input means connected to the CPU for receiving data defining the graphic object; translating means connected to the input means for translating the graphic object data to graphic image pixel data which defines the image of the graphic object; retrieval means connected to the frame buffer for retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; a pixel buffer; comparison means comprising a first and second input respectively connected to the translating means, the pixel buffer and the retrieval means for receiving graphic image pixel data and the corresponding frame buffer pixel data, and a first and second output respectively connected to the frame buffer and the pixel buffer, said comparison means comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, said comparison means comprising; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, a first blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer, and if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, a second blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer; if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, means for discarding the frame buffer pixel data and means for outputting the graphic image pixel data to the frame buffer, and if the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, means for pushing the frame buffer pixel data into the pixel buffer and means for outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data, occludes the subpixel mask of the graphic image pixel data, means for discarding the graphic image pixel data, and if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, means for pushing the graphic image pixel data into the pixel buffer; when all graphic image pixel data has been compared to corresponding frame buffer pixel data, means for reading the pixel buffer data from the pixel buffer for input to the comparison means wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, a third blending means to blend the frame buffer pixel data and the pixel buffer data; display control means connected to the frame buffer and the graphic display to read the modified pixel data stored in the frame buffer and enable the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, said apparatus further comprising:
-
input means connected to the CPU for receiving data defining the graphic object; translating means connected to the input means for translating the graphic object data to graphic image pixel data which defines the image of the graphic object; retrieval means connected to the frame buffer for retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; a pixel buffer; comparison means comprising a first and second input respectively connected to the translating means, the pixel buffer and the retrieval means for receiving graphic image pixel data and the corresponding frame buffer pixel data, and a first and second output respectively connected to the frame buffer and the pixel buffer, said comparison means comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, said comparison means comprising; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, a first blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data, for output to the frame buffer according to the following equations;
space="preserve" listing-type="equation">fb.sub.-- mask=fb.sub.-- mask.OR.new.sub.-- mask
space="preserve" listing-type="equation">fb.sub.-- rgb=fb.sub.-- rgb+new.sub.-- rgbwhere fb-- mask represents the subpixel mask of the frame buffer pixel data, new-- mask represents the subpixel mask of the graphic image pixel data, fb-- rgb and new-- rgb respectively respresent the color of the frame buffer pixel data and graphic image pixel data, + represents an addition operation and OR represents a logical OR operation, if the logical AND of the subpixel mask fo the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, a second blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer according to the following equations;
##EQU2## where cnt is a function which counts the number of sub-pixels set in a subpixel mask;if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, means for discarding the frame buffer pixel data and means for outputting the graphic image pixel data to the frame buffer; if the sub pixel mask of the graphic image pixel data is not occluded by the sub pixel mask of the frame buffer pixel data, means for pushing the frame buffer pixel data into a pixel buffer and means for outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data, occludes the subpixel mask of the graphic image pixel data, means for discarding the graphic image pixel data, and if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, means for pushing the graphic image pixel data into the pixel buffer; when all graphic image pixel data has been compared to corresponding frame buffer pixel data, means for reading the pixel buffer data from the pixel buffer for input to the comparison means wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, a third blending means to blend the frame buffer pixel data and the pixel buffer data according to compositing equations; display control means connected to the frame buffer and the graphic display to read the modified pixel data stored in the frame buffer and enable the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided.
-
-
7. An apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, said apparatus further comprising:
-
input means connected to the CPU for receiving data defining the graphic object; translating means connected to the input means for translating the graphic object data to graphic image pixel data which defines the image of the graphic object; retrieval means connected to the frame buffer for retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; a pixel buffer; comparison means comprising a first and second input respectively connected to the translating means, the pixel buffer and the retrieval means for receiving graphic image pixel data and the corresponding frame buffer pixel data, and a first and second output respectively connected to the frame buffer and the pixel buffer, said comparison means comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, said comparison means comprising; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, a first blending means for blending the graphic image pixel data and the corresponding frame buffer pixel data for output to the frame buffer, and if the logical AND of the subpixel mask of the correspoding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, means for pushing the graphic image pixel data into the pixel buffer; if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, means for discarding the frame buffer pixel data and means for outputting the graphic image pixel data to the frame buffer, and if the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, means for pushing the frame buffer pixel data into the pixel buffer and means for outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data, occludes the subpixel mask of the graphic image pixel data, means for discarding the graphic image pixel data, and if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, means for pushing the graphic image pixel data into the pixel buffer; when all graphic image pixel data has been compared to corresponding frame buffer pixel data, means for reading the pixel buffer data from the pixel buffer for input to the comparison means wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, a third blending means to blend the frame buffer pixel data and the pixel buffer data; display control means connected to the frame buffer and the graphic display to read the modified pixel data stored in the frame buffer and enable the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided. - View Dependent Claims (8, 9, 10)
-
-
11. In an apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, a method for rendering graphic images whereby the need to employ time consuming blending operations is minimized, comprising the steps of:
-
providing a pixel buffer; receiving data defining the graphic object; translating the graphic object data received to graphic image pixel data which defines the image of the graphic object; retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, comprising the steps of; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, blending, according to a first blending function, the graphic image pixel data corresponding frame buffer pixel data and outputting the data to the frame buffer, and if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, blending, according to a second blending function, the graphic image pixel data and the corresponding frame buffer pixel data and outputting the data to the frame buffer; if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, discarding the frame buffer pixel data and outputting the graphic image pixel data to the frame buffer, and if the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, pushing the frame buffer pixel data into the pixel buffer and outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data occludes the subpixel mask of the graph image pixel data, discarding the graphic image pixel data, and if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, pushing the graphic image pixel data; when all graphic image pixel data has been compared to corresponding frame buffer pixel data or when the pixel buffer is full, reading the pixel buffer data from the pixel buffer and comparing the pixel buffer data to the corresponding frame buffer pixel data wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, blending according to a third blending function the frame buffer pixel data and pixel buffer data; reading the modified pixel data stored in the frame buffer and enabling the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided. - View Dependent Claims (12, 13, 14, 15)
-
-
16. In an apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, a method for rendering graphic images whereby the need to employ time consuming blending operations is minimized, comprising the steps of:
-
providing a pixel buffer; receiving data defining the graphic object; translating the graphic object data received to graphic image pixel data which defines the image of the graphic object; retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, comprising the steps of; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is equal to zero, blending according to a first blending function, the graphic image pixel data corresponding frame buffer pixel data and outputting the data to the frame buffer, said first blending function comprising,
space="preserve" listing-type="equation">fb.sub.-- mask=fb.sub.-- mask.OR.new.sub.-- mask
space="preserve" listing-type="equation">fb.sub.-- rgb=fb.sub.-- rgb+new.sub.-- rgbwhere fb-- mask represents the subpixel mask of the frame buffer pixel data, new-- mask represents the subpixel mask of the graphic image pixel data, fb-- rgb and new-- rgb respectively represent the color of the frame buffer pixel data and graphic image pixel data and OR represents a logical OR operation, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data dn the subpixel mask of the graphic image pixel data is not equal to zero, blending according to a second blending function the graphic image pixel data and the corresponding frame buffer pixel data and outputting the data to the frame buffer;
said second blending equation comprising, ##EQU4## where cnt is a function which counts the number of sub-pixels set in a subpixel mask;if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, discarding the frame buffer pixel data and outputting the graphic image pixel data to the frame buffer, and if the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, pushing the frame buffer pixel data into the pixel buffer and outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data occludes the subpixel mask of the graph image pixel data, discarding the graphic image pixel data, and if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, pushing the graphic image pixel data; when all graphic image pixel data has been compared to corresponding frame buffer pixel data or when the pixel buffer is full, reading the pixel buffer data from the pixel buffer and comparing the pixel buffer data to the corresponding frame buffer pixel data wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, blending according to a third blending function the frame buffer pixel data and pixel buffer data; reading the modified pixel data stored in the frame buffer and enabling the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided.
-
-
17. In an apparatus for generating graphic images from graphic objects for display on a graphics display device, said graphics display device comprising a matrix of pixels, said apparatus comprising a central processing unit (CPU), memory, a frame buffer connected to the CPU and the display device, said graphic image being displayed on the display device according to the pixel data stored in the frame buffer, each pixel data comprising an (x, y, z) coordinate pixel location on the display device, the color of the pixel and a subpixel mask which identifies the extent of coverage across the pixel, said z coordinate identifying the depth of the pixel, a method for rendering graphic images whereby the need to employ time consuming blending operations is minimized, comprising the steps of:
-
providing a pixel buffer; receiving data defining the graphic object; translating the graphic object data received to graphic image pixel data which defines the image of the graphic object; retrieving the corresponding frame buffer pixel data stored in the frame buffer, said corresponding frame buffer pixel data identifying a pixel located at the same (x, y) coordinate pixel locations as the graphic image pixel data to be rendered; comparing the z value of the graphic image pixel data and the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data and the subpixel mask of the corresponding frame buffer pixel data, comprising the steps of; if the z value of the graphic image pixel data is equal to the z value of the corresponding frame buffer pixel data, if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, pushing the graphic image pixel data into the pixel buffer, and if the logical AND of the subpixel mask of the corresponding frame buffer pixel data and the subpixel mask of the graphic image pixel data is not equal to zero, blending according to a second blending function the graphic image pixel data and the corresponding frame buffer pixel data and outputting the data to the frame buffer; if the z value of the graphic image pixel data is less than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the graphic image pixel data occludes the subpixel mask of the frame buffer pixel data, discarding the frame buffer pixel data and outputting the graphic image pixel data to the frame buffer, and if the subpixel mask of the graphic image pixel data is not occluded by the subpixel mask of the frame buffer pixel data, pushing the frame buffer pixel data into the pixel buffer and outputting the graphic image pixel data to the frame buffer; if the z value of the graphic image pixel data is greater than the z value of the corresponding frame buffer pixel data, if the subpixel mask of the frame buffer pixel data occludes the subpixel mask of the graph image pixel data, discarding the graphic image pixel data, if the subpixel mask of the frame buffer pixel data does not occlude the subpixel mask of the graphic image pixel data, pushing the graphic image pixel data, when all graphic image pixel data has been compared to corresponding frame buffer pixel data or when the pixel buffer is full, reading the pixel buffer data from the pixel buffer and comparing the pixel buffer data to the corresponding frame buffer pixel data wherein if the subpixel mask of pixel buffer data is not occluded by the subpixel mask of the frame buffer pixel data, or if the subpixel mask of the frame buffer pixel data is not occluded by the subpixel mask of the pixel buffer data, blending according to a third blending function the frame buffer pixel data and pixel buffer data; reading the modified pixel data stored in the frame buffer and enabling the corresponding pixels on the display at the color specified by the modified pixel data to generate the graphic image on the display; whereby only those graphic image pixel data which remain in the pixel buffer are combined with the frame buffer pixel data using time consuming compositing equations and the time consuming task of compositing of those graphic image pixels which are behind and occluded by frame buffer pixels is avoided.
-
Specification