OpenGL

OPENGL

Es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos.

Historia

En los años 1980 el desarrollo de software que fuese compatible con un amplio rango de hardware gráfico era un verdadero reto para los desarrolladores. Había que tratar con interfaces muy diferentes y escribir drivers específicos para cada tipo de hardware, resultando muy costoso; por ello, se subcontrataban equipos de programadores para agilizar el desarrollo. Dado que cada equipo trabajaba por separado en sus interfaces, se producía mucho código redundante. Además, era un proceso caro, por lo que varios grupos innovadores aceptaron el reto de encontrar un método mejor.

Al principio de los años 1990 SGI era un grupo de referencia en gráficos 3D para estaciones de trabajo. Suya era la API IRIS GL, considerada puntera en el campo y estándar de facto, llegando a eclipsar a PHIGS, basada en estándares abiertos. IRIS GL se consideraba más fácil de usar y, lo más importante, soportaba renderizado en modo inmediato. Además, PHIGS, aparte de su mayor dificultad, fue considerada inferior a IRIS GL respecto a funcionalidad y capacidad.

El resultado de todo lo anterior fue el lanzamiento del estándar OpenGL.

Algunos de los logros que se consiguieron fueron:

Estandarizar el acceso al hardware.
Trasladar a los fabricantes la responsabilidad del desarrollo de las interfaces con el hardware.
Delegar las funciones para ventanas al sistema operativo.
Con la variedad de hardware gráfico existente, lograr que todos hablasen el mismo lenguaje obtuvo un efecto importante, ofreciendo a los desarrolladores de software una plataforma de alto nivel sobre la que trabajar.

En 1992, SGI lideró la creación del OpenGL Architecture Review Board (OpenGL ARB), grupo de empresas que mantendría y extendería la especificación OpenGL en los años siguientes. OpenGL evolucionó desde IRIS GL, superando su problema de dependencia del hardware al ofrecer emulación software para aquellas características no soportadas por el hardware del que se dispusiese. Así, las aplicaciones podían utilizar gráficos avanzados en sistemas relativamente poco potentes.

En 1994 SGI barajó la posibilidad de lanzar un producto denominado OpenGL++ el cual incluía elementos como una API de scene-graph (basada presumiblemente en la tecnología de Performer). Dicha especificación fue divulgada entre unos pocos grupos interesados, pero nunca apareció finalmente como producto.

Principales Librerias.

Los comandos de OpenGL son muy básicos
Lo normal es construir nuestra propia librería sobre OpenGL
– para el manejo de las ventanas
– para la interacción con el usuario
– para trabajar a más alto nivel (definiendo objetos y métodos más generales).
OpenGL: una API, no un lenguaje
OpenGL no es un lenguaje de programación
Sigue la convención de llamadas a C
OpenGL se divide en tres librerías distintas:
– Librería auxiliar AUX (glaux): independiente de la plataforma, manejo de ventanas,    manejo de eventos, objetos 3D.
– Librería específica OpenGL (gl)
– Librería de utilidades (glu): dibujo de esferas, discos, cilindros, rutinas de más alto nivel (proyecciones, teselación, rendering de superficies) etc.
OpenGL define sus propios tipos de datos
– GLbyte: entero de 8 bits
– GLushort: entero de 16 bits sin signo
– GLint: entero de 32 bits
– GLdouble: real de 64 bits

Usos e Importancia para la computación gráfica

Cuando hablamos de computación gráfica nos referimos al campo de la
informática visual, donde se utilizan computadoras para generar imágenes visuales y espaciales del mundo real.

En el mercado existen 2 tecnologías más usadas para el desarrollo de aplicaciones gráficas ya sea para crear GUI, o Juegos súper complejos. Mencionadas aplicaciones son usadas por los sistemas operativos mayormente conocidos como son Windows, GNU/Linux y Mac.

Compatibilidad con otros programas.

Es compatible con prácticamente
cualquier plataforma harware asi como con muchos lenguajes de programación (C,
C++, Visual Basic, Visual Fortran, Java).

 cubo











Comentarios