From: Andreas Pokorny (andreas.pokorny_at_[hidden])
Date: 2007-10-17 16:08:13
2007/10/17, Phil Endecott <spam_from_boost_dev_at_[hidden]>:
> So I have been wondering about how a graphics library that's not
> hardware-specific, like GIL or Anti-Grain or FreeType, can best be
> combined with hardware-specific features. For example, if I want to
> draw a rectangle with curved corners, then ideally I'd use the graphics
> hardware to draw the body of the rectangle and then do the details of
> the corners from the CPU, using MMX instructions to process whole
> pixels at a time. What sort of architecture would allow the maximum
> exploitation of available speedups, with the simplest possible interface?
You might also want to exploit opengl or openvg if available, and of course
it should be easy to be port to a different platform, e.g. some embedded
system with 2d acceleration.
This is very hard if you try acchieve it in a direct/immediate graphics library.
There are better chances for the different implementations to make use of
possible optimization if it is a non-immediate canvas library. Because then
the library can attach persistent information to the drawn objects,
and cache calculation results, track changes ...
The evas library of the englightenment project does that. But it is a
and never seems be finished.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk