Difference between revisions of "FAQ"

From OpenGL Wiki
Jump to navigation Jump to search
 
Line 3: Line 3:
 
=== What is OpenGL? ===
 
=== What is OpenGL? ===
 
OpenGL stands for Open Graphics Library. It is an API for doing 3D graphics.<br>
 
OpenGL stands for Open Graphics Library. It is an API for doing 3D graphics.<br>
 +
In more specific terms, it is an API that is used to "draw triangles on your scene". In this age of GPUs, it is about talking to the GPU
 +
so that it does the job of drawing. It does not deal with file formats. It does not open bmp, png and any image format. It does not
 +
open 3d object formats like obj, max, maya. It does not do animation. It does not handle keyboard, mouse and any input devices. It does not
 +
create a window, and so on.<br>
 +
All that stuff should be handled by an external library (GLUT is one example that is used for creating and destroying a window and handling mouse and keyboard).<br>
 
GL has gone through several versions : 1.0, 1.1, 1.2, 1.2.1, 1.3, 1.4, 1.5, 2.0, 2.1, 3.0<br>
 
GL has gone through several versions : 1.0, 1.1, 1.2, 1.2.1, 1.3, 1.4, 1.5, 2.0, 2.1, 3.0<br>
 
At each versions, extensions of interest are introduced into the core. Usually, they are all <b>ARB</b> extensions.<br>
 
At each versions, extensions of interest are introduced into the core. Usually, they are all <b>ARB</b> extensions.<br>
Line 14: Line 19:
 
=== Open Source? ===
 
=== Open Source? ===
 
No, OpenGL doesn't have any source code. GL is a specification which can be found on this website. It describes the interface the programmer uses and
 
No, OpenGL doesn't have any source code. GL is a specification which can be found on this website. It describes the interface the programmer uses and
expected behavior. OpenGL is Open Spec. Anyone can download the spec for free.
+
expected behavior. OpenGL is Open Spec. Anyone can download the spec for free.<br>
 +
There is an implementation of GL that is Open Source and it is called Mesa3D http://www.mesa3d.org<br>
 +
It doesn't have the license to call itself OpenGL, but it does follow the spec very well.
  
 
=== Where can I download? ===
 
=== Where can I download? ===

Revision as of 22:27, 18 September 2008

Welcome to the FAQ

What is OpenGL?

OpenGL stands for Open Graphics Library. It is an API for doing 3D graphics.
In more specific terms, it is an API that is used to "draw triangles on your scene". In this age of GPUs, it is about talking to the GPU so that it does the job of drawing. It does not deal with file formats. It does not open bmp, png and any image format. It does not open 3d object formats like obj, max, maya. It does not do animation. It does not handle keyboard, mouse and any input devices. It does not create a window, and so on.
All that stuff should be handled by an external library (GLUT is one example that is used for creating and destroying a window and handling mouse and keyboard).
GL has gone through several versions : 1.0, 1.1, 1.2, 1.2.1, 1.3, 1.4, 1.5, 2.0, 2.1, 3.0
At each versions, extensions of interest are introduced into the core. Usually, they are all ARB extensions.

Who maintains?

GL is created at SGI. Later on, the Architectural Review Board (ARB) controlled it which is a collection of major graphics companies.
Control was transfered to Khronos, which is another collection of major graphics companies. Their website is at http://www.khronos.org and they are specially known for OpenGL ES in which the ES means Embeded System (cellphones, PDA, consoles such as the Playstation 3 (PS3)) and other Open Spec APIs. You can find the list of companies at Khronos' website.

Open Source?

No, OpenGL doesn't have any source code. GL is a specification which can be found on this website. It describes the interface the programmer uses and expected behavior. OpenGL is Open Spec. Anyone can download the spec for free.
There is an implementation of GL that is Open Source and it is called Mesa3D http://www.mesa3d.org
It doesn't have the license to call itself OpenGL, but it does follow the spec very well.

Where can I download?

Just like the "Open Source?" section explains, GL is not a software product. GL is a specification.
Companies like nVidia and AMD/ATI use the spec to write their drivers, so OpenGL is in fact included in the drivers that they supply.
For laptop owners, you need to visit the manufacturer of your laptop and download the drivers from them.

What platforms have GL?

Windows 95 and above, Mac OSX, Linux, FreeBSD.
Cellphones, PDA, consoles such as the Playstation 3 (PS3) have OpenGL ES.
Despite the fact the PS3 offers GL ES and Cg, most games don't use it. Instead, the companies use the more low level libraries available on that platform.