Note: You are viewing an old revision of this page. View the current version.

OpenGL stands for Open Graphics Language. It is a rather low-level interface for programmers to draw polygons into the computer graphics hardware. However, the abstraction layer it provides means it is very portable. OpenGL had little mindshare of developers a few years ago when the other graphics APIs included Microsoft's Direct3D (part of DirectX) and 3dfx's Glide when one thing changed everything. That one thing was "Quake", when JohnCarmack's id software chose OpenGL. Quake, combined with a Voodoo2 graphics card and the OpenGL drivers that came with it was irrestible.

As far as linux is concerned, Xfree86 has supported OpenGL pretty well since the 3.3.x series, and the newer 4.x series has great support. Mesa is the name of the open source OpenGL software implementation, while some card manufacturers have release specifications that allow developers to write drivers to take advantage of hardware acceleration. Other manufacturers, notably NVidia, have binary-only graphics card drivers.

see HowToNvidiaOpenGLConfiguration? and HowToLinuxGLQuakeWorldminiHOWTO? for specific details and some more background to how GL works with XFree86.

For anyone interested in programming using OpenGL, I highly recommend either SDL or GLUT. It saves you a lot of time and energy learning the intracacies of your particular platform and makes your program portable.