MiniGL es una implementación incompleta de la especificación OpenGL que implementa lo suficiente de la API como para permitir que los videojuegos 3D de finales de la década de 1990 se ejecutaran con aceleración por hardware en las tarjetas gráficas contemporáneas , que de otro modo proporcionaban sus propias API. La implementación original provino de 3dfx Interactive y fue diseñada para dar soporte a Quake . Otras compañías que implementaron software similar fueron PowerVR y Rendition .
Historia
En 1996, id Software anunció que Rendition Vérité sería el único acelerador 3D de hardware compatible con Quake . Esto se debió, en parte, a la dificultad que suponía dar soporte a las API específicas de cada chipset y, en parte, a que el desarrollo previo de Quake en estaciones de trabajo de gama alta facilitaba esta tarea. También lanzaron una versión de Quake para Microsoft Windows , basada en OpenGL , llamada GLQuake , a pesar de que ningún chipset para el consumidor ofrecía soporte para OpenGL en aquel momento.
En respuesta, 3dfx desarrolló y lanzó rápidamente el primer MiniGL, llamado 3Dfx GL miniport [ a ] : una implementación rápida de la cantidad mínima de la API de OpenGL necesaria para ejecutar la versión OpenGL de Quake . Al obtener una copia del ejecutable OpenGL de Quake y una copia del MiniGL correspondiente, los propietarios de 3dfx podían modificar fácilmente sus copias de Quake para jugar con aceleración 3D completa, lo que proporcionaba una visualización más fluida y mejor que la que era posible con el renderizador de software de Quake . Tras el éxito del original de 3dfx, varios otros fabricantes siguieron el ejemplo de 3dfx en la producción de controladores MiniGL.
En aquel momento, la API de OpenGL era considerada casi universalmente superior al entonces nuevo e inmaduro sistema Direct3D de Microsoft , por lo que, tras la llegada de las distintas versiones de MiniGL, muchos programadores buscaron utilizarlas en otros programas como una forma sencilla de admitir múltiples conjuntos de chips 3D. Desafortunadamente, id Software no había publicado ninguna lista oficial de las llamadas y parámetros de OpenGL utilizados por Quake , y ninguno de los desarrolladores de MiniGL había publicado listas de lo que su implementación admitiría y lo que no.
En la práctica, esto llevó a que los programadores hicieran un uso muy cauteloso de las funciones de OpenGL y a que cada vez que salía un juego importante que no funcionaba en la generación anterior, aparecieran nuevas versiones de MiniGL con un poco más de funcionalidad.
Actualmente, todos los principales fabricantes de tarjetas 3D son compatibles con implementaciones completas de OpenGL, lo que elimina la necesidad de cualquier tipo de MiniGL.
Otras implementaciones
Se han desarrollado implementaciones de MiniGL para otros sistemas operativos , incluidos Palm OS [ 1 ] y AmigaOS . [ 2 ]
Véase también
Notas
- ↑ Véase glq1114.exe , el instalador de la versión 0.97 de GLQuake . Debido a la homonimia, esto también provocó una asociación errónea generalizada con los controladores de dispositivos miniport en Windows.
Referencias
- Software Amiga
- Software AmigaOS 4
- Interfaces de programación de aplicaciones
- Bibliotecas gráficas
- OpenGL