MiniGLX

MiniGLX is a specification for an application programming interface which facilitates OpenGL rendering on systems without windowing systems, e.g. Linux without an X Window System or embedded systems without a windowing system. The interface is a subset of the GLX interface, plus a minimal set of Xlib-like functions.

Programs written for Mini GLX can run unchanged on systems with the X Window System and the GLX extension. The intention is to allow flexibility for prototyping and testing.

MiniGLX is currently implemented within the Mesa 3D project that provides a means to use the Direct Rendering Infrastructure when the X Window System is not used. In essence it provides functions that mimic those of X, so that programs written using MiniGLX should be compilable as X Window programs. MiniGLX renders directly to the framebuffer device or through accelerated DRI drivers. MiniGLX allows only one window (which fills the whole framebuffer) to exist.

If the existing source code were extended, MiniGLX could be used by GPGPU applications, using the power of graphics card processors for general, non-graphical tasks, as long as no other driver uses the graphics card. Nvidia has already integrated support for using the graphics processing unit on Nvidia cards for application programming into its proprietary 3D graphic driver.