[cairo] glitz internal and cairo rendering model

Stéphane Conversy conversy at cena.fr
Fri May 28 08:27:45 PDT 2004

Le 28 mai 04, à 16:43, Keith Packard a écrit :

> Around 11 o'clock on May 28, =?ISO-8859-1?Q?St=E9phane_Conversy?= 
> wrote:
>> Does the rendering model implies that the tesselation occurs for each
>> drawing ?
> Yes, but tesselation is transform dependent.  If you want to repaint
> objects under the same transformation, just stuff them into a surface.

I'm considering interaction in a zoomable user interface (ZUI). As you 
zoom in, there is no need to tesselate
a shape each frame. Just tesselate it once for all at a sufficient LOD, 
then reuse it for each frame.
Of course, you can render the shape into a surface, and reuse it as a 
texture each frame, but unless the texture is the size of the screen
you'll end up with pixelized image. Not that bad, but bad anyway...
Furthermore, an image in graphical memory takes up more memory than 
vertices, and, especially with today's and future's
high-definition screen and GPU the balance between speed of rendering 
using vectorial info and pixmap info may well be in favor of the first 

As I said in my previous message, if cairo makes tesselation 
accessible, at least it can be done in another way, can it ?
However, even with that scheme, it requires a kind of knowledge from 
the programmer : if I had to program an svg lib (and, actually, I did,
see my web page), I would use the structure of the scene to try 
optimizing things, which is not feasible with straight-cairo.

Well, my point is : glitz can't optimize at the max rendering of cairo 
with opengl because of the direct-mode model cairo uses.
Now, my question is : In which way cairo must be changed to make those 
optimizations feasible ?
Another question is : does this question make sense, I mean, is there 
any point to change cairo that way ?

I hope you won't be upset by my questions or remarks, I have the 
feeling of being the bad guy coming from nowhere and only
criticizing work of others...

stéphane conversy

More information about the cairo mailing list