Glitz is an OpenGL image compositing library. Glitz provides Porter/Duff compositing of images and implicit mask generation for geometric primitives including trapezoids, triangles, and rectangles.
The semantics of glitz are designed to precisely match the specification of the X Render extension. Glitz does not only implement X Render features like component alpha and image transformations, but also support for additional features like convolution filters and color gradients, which are not currently part of the X Render specification.
The performance and capabilities of glitz are much dependent on graphics hardware. Glitz does not in any way handle software fall-backs when graphics hardware is insufficient. However, glitz will report if any requested operation cannot be carried out by graphics hardware, hence making a higher level software layer responsible for appropriate actions.
Glitz can be used as a stand-alone layer above OpenGL but is also designed to act as a backend for cairo, providing it with OpenGL accelerated output.
Source Repository Access
# Anonymous access: $ git clone git://git.freedesktop.org/git/glitz # Developer access: $ git clone ssh+git://git.freedesktop.org/git/glitz
The glitzinfo and rendertest modules might also be of interest:
$ cvs -d:pserver:email@example.com:/cvs/cairo login CVS password: <hit return> $ cvs -d:pserver:firstname.lastname@example.org:/cvs/cairo co glitzinfo $ cvs -d:pserver:email@example.com:/cvs/cairo co rendertest
Development snapshots of glitz are available for download here.
Several test/demo applications are available.
- <-- (No link?)
The USENIX'04 freenix track paper.
-- Main.DavidReveman - 20 Jul 2004