GLX
Encyclopedia
GLX provides the interface connecting OpenGL
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 Graphics
Silicon 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 API
    Application programming interface
    An 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 rendering
    Software rendering
    In 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 Windows
    Microsoft Windows
    Microsoft 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
  • CGL
    Core OpenGL
    Core 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 X
    Mac OS X
    Mac 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
  • AIGLX
    AIGLX
    Accelerated 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...

  • GLUT
    OpenGL Utility Toolkit
    The 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...

  • EGL
    EGL (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

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK