is a
Free Software Graphics Library , initially developed by
Brian Paul in August 1993, that provides a generic
OpenGL implementation for rendering
Three-dimensional graphics on multiple
Platforms . Though Mesa is not an officially licensed
OpenGL implementation, the structure, syntax and semantics of the
API is that of OpenGL.
As of
July 2007 , it is the only commonly known, fully
Open Source implementation of OpenGL which is continually updated to support latest OpenGL
Specification , it is widely used, most importantly by the
X.org implementation of the
X Window System where it serves as the OpenGL core for the open-source X.Org/DRI OpenGL drivers. X.org which is providing the essential requirement of most graphical
Applications which run on
UNIX -like platforms such as
Linux .
Initially, Mesa started off by rendering all
3D Computer Graphics on the
Central Processing Unit , but the architecture of Mesa was open to implement
Graphics Processor -accelerated 3D rendering in Mesa. When 3D
Graphics Cards became mainstream on PC hardware, companies started to work on adding support for hardware-accelerated 3D rendering to Mesa. One of the first drivers was the 3dfx driver for the
Glide API to support the (back then) very popular
Voodoo I/II
Graphics Card s and there were others as well, but all rendering was done indirectly in the
X Server , so there was some overhead involved and speed was behind the theoretical maximum. The
Direct Rendering Infrastructure (DRI) finally succeeded in providing an infrastructure for direct 3D rendering by the OpenGL applications and was officially added to Mesa.
- In its current form, Mesa 3D is available and can be compiled on virtually all modern platforms.
- Though not an official OpenGL implementation for licensing reasons, the Mesa 3D authors have worked to keep the API in line with the most current OpenGL standards and conformance tests, as set forth by the OpenGL ARB .
- Whilst Mesa 3D supports several hardware graphics accelerators, it may also be compiled as a software-only renderer. Since it is also free/open source software, it is possible to use it to study the internal workings of an OpenGL -compatible renderer.
- It is sometimes possible to find subtle bugs in OpenGL applications by linking against Mesa 3D and using a conventional debugger to track problems into the lower level library.