[cairo] Re: Xgl server

Brian Paul brian.paul at tungstengraphics.com
Wed Nov 10 07:12:16 PST 2004


Martijn Sipkema wrote:
> From: "David Reveman" <c99drn at cs.umu.se>
> 
>>Quoting Jon Smirl <jonsmirl at gmail.com>:
>>
>>
>>>On Mon,  8 Nov 2004 21:43:55 +0100, c99drn at cs.umu.se <c99drn at cs.umu.se>
>>>wrote:
>>>
>>>>Cairo's glitz backend can't provide the same quality as the xlib/xcb
>>>
>>>backends
>>>
>>>>right now, but that should be made possible in the future, and it's of
>>>
>>>course
>>>
>>>>required if we'd like applications to switch to glitz when DRI is
>>>
>>>available.
>>>
>>>As you talking about glitz in general or glitz on opensource DRI? ATI
>>>and NVidia proprietary drviers have most of OpenGL implemented while
>>>DRI doesn't.
>>>
>>>Why does Cairo->glitz->OpenGL have quality issues and
>>>Cairo->xlib->XGL-OpenGL not have them?
>>>
>>
>>Glitz doesn't have any quality issues. Glitz can do trapezoids or any other type
>>of geometric primitives in different ways. Cairo's glitz backend is using the
>>fastest way and this doesn't produce trapezoids with anti-aliasing quality
>>matching the requirements of RENDER. XGL is currently rasterizing trapezoids in
>>software and then sending masks to hardware for compositing. This produces
>>trapezoids with anti-aliasing quality that match RENDER. Glitz can possibly
>>produce trapezoids with RENDER quality without using software rasterizing (ADD
>>traps to pbuffer, pbuffer as mask to composite). This is how XGL will do
>>trapezoids in the future but I'm not sure it will be much more efficient than
>>software rasterizing until we get a good render-to-texture extension in OpenGL.
>>Nevertheless, it will never be as fast as the way cairo's glitz backend is
>>currently doing trapezoids.
> 
> 
> Instead of using pbuffers or render-to-texture it might be an option to render
> to an aux buffer using OpenGL polygon smoothing and saturate blending and then
> copying to the color buffer.

Unfortunately, AUX color buffers aren't supported in many OpenGL 
implementations.  So, you'll always need some kind of alternative.


> Since front-to-back rendering is not always an option and is not what the
> PostScript model does, using aux buffers more often seems to me the best way
> to provide hardware accelerated smoothed drawing when not using multisampling.

-Brian



More information about the cairo mailing list