GLX
Encyclopedia
GLX provides the interface connecting OpenGL
and the X Window System
: it enables programs wishing to use OpenGL to do so within a window provided by the X Window System.
developed GLX; the software has reached version 1.4. GLX, with both DRI
and Mesa
, has been included in the X.Org Foundation's
version of the X Window System since X11R6.7.0, and in The XFree86 Project's
version since version 4.0.
On September 19, 2008, SGI created a new SGI FreeB License Version 2.0, which "now mirrors the free X11 license used by X.Org" and "meets the free and open source software community's widely accepted definition of 'free'".
If client and server are running on the same computer and an accelerated 3D graphics card using a suitable driver is available, the former two components can be bypassed by DRI
. In this case, the client program is then allowed to directly access the graphics hardware.
A great deal of diagnostic information about GLX, including the GLX visual
s the server supports, can be found using the glxinfo command. The demo utility glxgears provides a rough estimate of the speed of the 3D rendering setup. In newer versions of glxgears you have to use the -info switch to glxgears to see the speed. Although often used as such, glxgears is not a benchmark tool. It can, however, be used to verify that hardware-accelerated libraries are installed correctly.
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...
and the X Window System
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
: it enables programs wishing to use OpenGL to do so within a window provided by the X Window System.
History
Silicon GraphicsSilicon Graphics
Silicon Graphics, Inc. was a manufacturer of high-performance computing solutions, including computer hardware and software, founded in 1981 by Jim Clark...
developed GLX; the software has reached version 1.4. GLX, with both DRI
Direct Rendering Infrastructure
In computing, the Direct Rendering Infrastructure is an interface and a free software implementation used in the X Window System to securely allow user applications to access the video hardware without requiring data to be passed through the X server. Its primary application is to provide...
and Mesa
Mesa 3D
Mesa 3D is an open source 3D computer graphics library that provides a generic OpenGL implementation for rendering three-dimensional graphics on multiple platforms. It was initially developed by Brian Paul in August 1993, and is still maintained by him today...
, has been included in the X.Org Foundation's
X.Org Server
X.Org Server refers to the X server release packages stewarded by the X.Org Foundation,which is hosted by freedesktop.org, and grants...
version of the X Window System since X11R6.7.0, and in The XFree86 Project's
XFree86
XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms. It is free and open source software under the XFree86 License version 1.1. It is developed by the...
version since version 4.0.
On September 19, 2008, SGI created a new SGI FreeB License Version 2.0, which "now mirrors the free X11 license used by X.Org" and "meets the free and open source software community's widely accepted definition of 'free'".
Features
GLX consists of three parts:- An APIApplication programming interfaceAn application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
that provides OpenGL functions to an X Window System application. - An extension of the X protocol, which allows the client (the OpenGL application) to send 3D rendering commands to the X server (the software responsible for the display). The client and server software may run on different computers.
- An extension of the X server that receives the rendering commands from the client and passes them on to the installed OpenGL library (typically either a vendor-specific hardware-accelerated library or the open-source Mesa library, which as a last resort may use software renderingSoftware renderingIn the context of rendering , software rendering refers to a rendering process that is unaided by any specialized graphics hardware, such as a graphics card. The rendering takes place entirely in the CPU...
).
If client and server are running on the same computer and an accelerated 3D graphics card using a suitable driver is available, the former two components can be bypassed by DRI
Direct Rendering Infrastructure
In computing, the Direct Rendering Infrastructure is an interface and a free software implementation used in the X Window System to securely allow user applications to access the video hardware without requiring data to be passed through the X server. Its primary application is to provide...
. In this case, the client program is then allowed to directly access the graphics hardware.
A great deal of diagnostic information about GLX, including the GLX visual
GLX visual
In computing, a GLX visual is a set of attributes that define a mode in which OpenGL programs can write to an X window with GLX. A list of GLX visuals can be found with the command "glxinfo". Programs can get a GLX visual matching the desired properties with glXChooseVisual...
s the server supports, can be found using the glxinfo command. The demo utility glxgears provides a rough estimate of the speed of the 3D rendering setup. In newer versions of glxgears you have to use the -info switch to glxgears to see the speed. Although often used as such, glxgears is not a benchmark tool. It can, however, be used to verify that hardware-accelerated libraries are installed correctly.
See also
- WGL: the equivalent Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
interface to OpenGL - CGLCore OpenGLCore OpenGL, or CGL, is Apple Inc.'s Macintosh Quartz windowing system interface to the Mac OS X implementation of the OpenGL specification...
: the equivalent Mac OS XMac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
interface to OpenGL - AIGLXAIGLXAccelerated Indirect GLX is an open source project founded by Red Hat and the Fedora community, led by Kristian Høgsberg, to allow accelerated indirect GLX rendering capabilities to the X.Org Server and DRI drivers...
- GLUTOpenGL Utility ToolkitThe OpenGL Utility Toolkit is a library of utilities for OpenGL programs, which primarily perform system-level I/O with the host operating system. Functions performed include window definition, window control, and monitoring of keyboard and mouse input...
- EGLEGL (OpenGL)EGL is an interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system. It handles graphics context management, surface/buffer binding, and rendering synchronization and enables "high-performance, accelerated, mixed-mode 2D and 3D rendering...
: a similar cross-platform interface between OpenGL ES or VG and the underlying native platform window system