Okay, now let us look at the second block of the rasterisation module: the Raster Operation Unit.
A pixel which leaves a pixel pipeline is not yet completely ready to be displayed on screen (or to be more precise -
written in the framebuffer). This pixel must still undergo some tests and can even undergo a change of color! It is
for this reason that an outgoing pixel of the pixel processor is sometimes called pixel candidate with the
framebuffer or fragment.
The Raster Operation Unit, also called module of composition, is composed of several processing
units of fragments. Each one of these units is called ROP. The following denominations are equivalent:
- Raster Operation Processor
- Raster Operation Pipeline
- Raster Operation Pipe
Each ROP ensures the following processes:
- the scissor test
- the alpha test
- the stencil test
- the depth test
- the color mixture (blending)
The scissor test makes it possible to define a rectangular zone outside of which the fragments are not valid.
The alpha test makes it possible to set aside the fragments whose alpha value does not verify the condition
imposed on the alpha value. The stencil test is mainly used in the shadow-volumes algorithms (the stencil shadow
volumes). The depth test makes it possible to remove the fragments whose z value does not verify the
condition imposed on the z value. Finally the mixture of color (the famous blending) makes it possible
to modify, if necessary, the color of the fragment with the already existing color in the framebuffer. Among all these
processes, the depth test and the blending are the two most fundamental operations of ROPs.
Once having left the ROP, a fragment is called a final pixel and is written in the framebuffer. The framebuffer is
this renown memory zone in which the final image is drawn and then displayed on screen.
Between the exit of the pixel pipelines and the entry of ROPs, there is a small module which makes it possible to
distribute, to route and buffer the fragments towards different ROPs. The presence of this module is due to the fact
that there are more pixel pipelines than ROPs. The nVidia denomination for this module is Fragment Crossbar.