¿Pueden las aplicaciones que usan versiones antiguas de Opengl seguir ejecutándose en tarjetas más nuevas?

8

OpenGl 3.0 y versiones posteriores tienen una gran diferencia con respecto a las versiones anteriores como OpenGl 2.xy opengl 1.x en términos de implementación, ¿eso significa que las aplicaciones escritas con las versiones anteriores de opengl no se ejecutarán en computadoras con tarjetas de video? ¿Es compatible con Opengl 3.xy versiones posteriores?

Lo siento, si este no es el lugar correcto para preguntar esto.

Gracias.

Stalker ka NOOB
fuente

Respuestas:

2

En resumen: OpenGL 1.x todavía será compatible.

En teoría, es posible que alguien escriba una implementación de OpenGL que solo sea compatible con 3.xy versiones posteriores, pero admitir las cosas más antiguas le brinda una gama tan amplia de aplicaciones existentes que sería una tontería no admitirlas.

Algunas partes de la canalización de OpenGL 1.x pueden implementarse de una manera no óptima (es decir, lenta), pero las cosas seguirán funcionando. Los controladores de ATI hicieron que la selección fuera terriblemente lenta en algún momento, lo que provocó cambios en Blender, por ejemplo.

En el lado de OpenGL ES, las cosas son un poco más complicadas. No conozco ninguna instancia de él, pero ES 2.0 y posteriores son muy diferentes de ES 1.x que es posible que algunos dispositivos no sean compatibles con ES 1.x. En la mayoría de los casos, el hardware ES2 + emulaba ES 1.x en software (generando sombreadores sobre la marcha y cosas divertidas como esa).

Jari Komppa
fuente
3

Actualmente, ningún controlador ha eliminado la compatibilidad con versiones anteriores de OpenGL. Además de eso, la mayoría también implementa la extensión de compatibilidad, lo que significa que puede mezclar cosas viejas con contextos OpenGL 3.2+ (la excepción es Mac OSX, donde solo está disponible el perfil central para OpenGL 3.2; aún puede usar cosas viejas, pero no junto con cosas nuevas).

Tapio
fuente
1
¿Estás diciendo que el código glBegin..glEnd no se compilará en OSX moderno?
Jari Komppa
@JariKomppa, modificó mi respuesta.
Tapio