[cairo] Re: [Mesa3d-dev] Points in Cairo Glitz paper

Jon Smirl jonsmirl at yahoo.com
Thu Apr 22 10:54:27 PDT 2004

--- Carl Worth <cworth at east.isi.edu> wrote:
> Sure. But for cairo, the 3D hardware is only one output path.
> High-quality print output (PS/PDF) is just as important. That's why the
> design starts with the desires of application developers who are
> targeting multiple output devices and then works down.

I agree, but not all targets have the same performance needs and
characteristics. Some targets are relatively inflexible in what they can

I would target 3D hardware as the optimal output device for Cairo, but then
constrain the use of the 3D hardware to what can be printed using PS/PDF. For
example PS/PDF can't read the output buffer back and use it to compute another
part of the display. PS/PDF also impacts text output. Obviously you can't expose
the 3D transformation features of the video hardware. Software can simulate
anything. Since all of the other output devices are software based they don't
constrain any of the API choices.

Finally there is programmer ease of use. I would pick a model of having the main
API optimized for the hardware and then provide helper libs to make things
easier on the programmer. This model allows the programmer to chose to make the
extra effort if the performance gains are worth it. Splitting the polygon API is
a good example of this.

Jon Smirl
jonsmirl at yahoo.com

Do you Yahoo!?
Yahoo! Photos: High-quality 4x6 digital prints for 25¢

More information about the cairo mailing list