Method and apparatus for high speed block mode triangle rendering
AssigneeATI International SRL
InventorsMark C. Fowler, Kevin M. Olson
Life of this patent
Estimating the term…
Abstract
A system for traversing and rendering a graphic primitive, comprising a setup engine that outputs representative values of a graphic primitive; and a raster engine that receives the representative values of the graphic primitive and forms therefrom representative pixels, the raster engine having at least a scan module that scans only pixels within the graphic primitive and assigns data values to each of the pixels and a look-ahead module that identifies pixels that are inside of the primitive.
Claims14
A system for traversing and rendering a graphic primitive, comprising:
- a setup engine that outputs representative values of a graphic primitive including edge functions of the graphic primitive;
- a raster engine that receives the representative values of the graphic primitive and wherein the raster engine forms therefrom representative pixels, the raster engine having at least a scan module and a look-ahead module;
- and
- wherein the scan module successively scans a current pixel previously identified as being within the graphic primitive by the look-ahead module while the look-ahead module successively processes a next pixel using the edge functions and determines if the next pixel is within the graphic primitive.
A system for traversing and rendering a graphic primitive, comprising:
- a setup engine having an output that outputs representative values of the graphic primitive including x and y slope data;
- a raster engine that receives the representative values of the graphic primitive and forms therefrom representative pixels, the raster engine having at least a scan module that scans only pixels within the graphic primitive and assigns data values to each of the pixels and a look-ahead module that identifies pixels that are inside of the graphic primitive;
- and
- wherein the scan module includes:
- first and second registers for storing the x and y slope data, respectively, for a predetermined current pixel in the graphic primitive;
- a first multiplexer having inputs connected to outputs of the first and second registers, and having an output;
- an adder having first and second inputs and having an output, the first input of the adder connected to the output of the first multiplexer;
- a third register for receiving a characteristic value for the predetermined current pixel, the third register having an input and an output;
- a second multiplexer having first and second inputs and an output, the first input of the second multiplexer connected to the output of the third register, and the output of the second multiplexer connected to the second input of the adder;
- a third multiplexer having first and second inputs and an output, the first input of the third multiplexer connected to the setup engine output and the second input connected to the output of the adder, and the output of the third multiplexer connected to the input of the third register;
- a fourth multiplexer having first and second inputs and an output, the first input connected to the output of the third register;
- and
- a fourth register having an input connected to the output of the fourth multiplexer, and having an output connected to the second input of the second multiplexer, the output of the fourth register also connected to the second input of the fourth multiplexer.
A method in a graphics system for traversing and rendering a graphic primitive, comprising:
- determining representative values of the graphic primitive;
- and
- successively determining from the representative values of the graphic primitive data values for a current pixel that is previously identified as being within the graphic primitive, while successively looking ahead to a next adjacent pixel to determine if the next adjacent pixel is within the graphic primitive using edge functions and
- storing a characteristic value for the next adjacent pixel when the next adjacent pixel is within the graphic primitive.
A graphics system, comprising:
- a first module that generates edge functions for a triangular graphic primitive, wherein the first module further indicates which of the edge functions corresponds to a longest side of the triangular graphic primitive, and further provides starting coordinates for the triangular graphic primitive and
- a second module that forms pixels using the edge functions of the triangular graphic primitive and that provides at least one data value for each current pixel previously identified as being within the triangular graphic primitive while
- a third module successively determines if a next pixel is within the triangular graphic primitive, and stores at least one data value of the next pixel when the next pixel is inside of the triangular graphic primitive.
Dependencies are inferred from the claim text.