Chapter 1. Introduction

LibGGI, the dynamic GGI (General Graphics Interface) library is a flexible drawing library.

It provides an opaque interface to the display's acceleration functions. It was originally intended to allow user programs to interface with KGI, the GGI Kernel Graphics Interface, but other display types can be easily used by loading the appropriate "display target" (e.g. X, memory).

LibGGI consists of a main library (libggi.so) and a multitude of dynamic drivers. The library then loads the necessary "drivers" for the requested mode, taking hints from the graphics device if necessary.

LibGGI can also load extension libraries, e.g. to provide enhanced 2D and 3D functions.

It has been designed after having a look at several existing libraries, and so far we have found porting to be quite simple from and to most of them.