mutter/clutter/cogl
Neil Roberts 62c893feee cogl-journal: Attempt to clip manually to avoid breaking up batches
Before flushing the journal there is now a separate iteration that
will try to determine if the matrix of the clip stack and the matrix
of the rectangle in each entry are on the same plane. If they are it
can completely avoid the clip stack and instead manually modify the
vertex and texture coordinates to implement the clip. The has the
advantage that it won't break up batching if a single clipped
rectangle is used in a scene.

The software clip is only used if there is no user program and no
texture matrices. There is a threshold to the size of the batch where
it is assumed that it is worth the cost to break up a batch and
program the GPU to do the clipping. Currently this is set to 8
although this figure is plucked out of thin air.

To check whether the two matrices are on the same plane it tries to
determine if one of the matrices is just a simple translation of the
other. In the process of this it also works out what the translation
would be. These values can be used to translate the clip rectangle
into the coordinate space of the rectangle to be logged. Then we can
do the clip directly in the rectangle's coordinate space.
2010-12-03 17:16:58 +00:00
..
cogl cogl-journal: Attempt to clip manually to avoid breaking up batches 2010-12-03 17:16:58 +00:00
doc cogl: improves header and coding style consistency 2010-02-12 14:05:00 +00:00
pango path 2.0: update path API for experimental 2.0 API 2010-11-11 13:17:26 +00:00
Makefile.am [cogl] move clutter/pango to clutter/cogl/pango 2009-10-16 18:58:51 +01:00