Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

GLX

From Wikipedia, the free encyclopedia
For other uses, seeGLX (disambiguation).
This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "GLX" – news ·newspapers ·books ·scholar ·JSTOR
(July 2012) (Learn how and when to remove this message)
Extension to the X Window System core protocol
GLX
Original author(s)SGI
Initial release1992
Stable release
1.4 / December 16, 2005
Written inC
LicenseSGI FreeB License[1]
Websitedri.freedesktop.org/wiki/GLX/

GLX (initialism for "OpenGL Extension to theX Window System") is an extension to theX Window System core protocol providing aninterface betweenOpenGL and theX Window System as well as extensions to OpenGL itself. It enables programs wishing to use OpenGL to do so within a window provided by the X Window System. GLX distinguishes two "states": indirect state and direct state.

History

[edit]

Silicon Graphics developed GLX as part of their effort to support OpenGL in theX Window System. In 1999 SGI released GLX under anopen-source license,[2] letting it be incorporated inXFree86 source code version 4.0 in 2000. From there, the code was inherited by the forkedX.Org Foundation version of the X Window System X11R6.7.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'".[3] In 2009 theFree Software Foundation endorsed the SGI Free License B to be afree-software license, and GLX to be an importantfree-software graphics project.[4][5] As of 2011, GLX has reached version 1.4.

The first internal implementation of GLX API, called GLcore,[6] loaded a version of the software renderer ofMesa inside the X server and rendered the OpenGL commands in a window or pixmap. With the development ofDRI, the ability to use hardware accelerated OpenGL through direct contexts was added (primarily used byvideogames). In 2006, the popularization of the nestedXgl X server andCompizcompositing window manager lead to the development of Accelerated Indirect GLX (AIGLX). AIGLX brings hardware acceleration to the GLX (indirect context) applications by loading the Mesa DRI driver inside the X server. This method enables the sharing of GL objects between X clients using indirect contexts (they all are in the same address space in the X server) and also between a X client and the compositing window manager, thus accelerating composition. In 2008 the binding in GLcore to the Mesa software renderer was rewritten as a DRI interface module, calledswrast_dri.so, improving the coupling of Mesa and the X server. Also in the year 2008 the new DRI2 was introduced to replace DRI, and with it a new model based in theKernel mode-setting. In 2011, theGlamor project started, aiming to add a generic hardware-accelerated 2D X driver based in OpenGL. In 2013 Adam Jackson did a major rewrite of GLX code to consolidate the diverse paths from Glamor, indirect rendering, ... to one unique path to OpenGL's library libGL.[7]

Features

[edit]
GLX demo (glxgears) included with X11

GLX consists of three parts:

  1. AnAPI that provides OpenGL functions to an X Window System application.
  2. 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.
  3. An extension of the X server that receives the rendering commands from the client and passes them on to the installed OpenGL library

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 byDRI. In this case, the client application is then allowed to directly access the video hardware through several API layers.

Implementations

[edit]

See also

[edit]
  • WGL – the equivalentMicrosoft Windows interface to OpenGL
  • CGL – the equivalentmacOS interface to OpenGL
  • EGL – a similar cross-platform interface between OpenGL ES or VG and the underlying native platform window system
  • GLUT – library of utilities for OpenGL programs

References

[edit]
  1. ^oss-project-owners (2012)."History and Most Recent Version of the SGI Free Software License B".Silicon Graphics International. Archived fromthe original on 2017-04-20. Retrieved2017-04-11.
  2. ^Jon Leech (2012)."OpenGL Sample Implementation".Silicon Graphics International. Archived fromthe original on 2011-05-14. Retrieved2017-04-11.
  3. ^"SGI Further Opens Its OpenGL Contributions". 2008-09-19. Archived fromthe original on 2012-02-11.
  4. ^Lee, Matt (2008-09-19)."Thank you SGI, for freeing the GNU/Linux 3D desktop!".Free Software Foundation. Retrieved2017-04-11.
  5. ^brett (2009-01-13)."3D graphics are 100% free software". Free Software Foundation. Retrieved2017-04-11.
  6. ^"DRI – GLcore".freedesktop.org. 2016-07-20. Retrieved2017-04-11.
  7. ^Jackson, Adam (2014-02-04)."Rewriting GLX To Rewrite X".Linux.conf.au.Archived from the original on 2021-12-21. Retrieved2017-04-11.

External links

[edit]
Architecture
Extensions
Components
and notable
implementations
Display servers
Client libraries
Display managers
Session managers
Window managers
(comparison)
Compositing
Stacking
Tiling
Standards
Applications
Retrieved from "https://en.wikipedia.org/w/index.php?title=GLX&oldid=1224129330"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp