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).


Comentarios
Publicar un comentario