2010-11-17 13 views
9

Hace 10 años hice algo de programación de juegos y usé OpenGL para la parte de gráficos 3D. No fue realmente genial, solo algunos script kiddies intentan hacer un juego :-)re-learning opengl

Ahora necesito visualizar una escena para probar algoritmos de procesamiento de imágenes. Me preguntaba: ¿Qué cambió en estos 10 años? (¿Supongo que es mucho?) ¿Sigue siendo buena o está desactualizada el NeHe? ¿Hay buenos recursos para cerrar la brecha?

Gracias!

Respuesta

7

NeHe está en el proceso de escribir new tutorials. Algunas de las cosas con las que has estado acostumbrado hace 10 años han sido más o menos abandonadas (los perfiles de compatibilidad aún existen, pero están en desuso) al pasar a una cartera totalmente programable y primitivas más eficientes.

Por ejemplo, pasar vértices entre glBegin()/glEnd() se deja atrás a favor de los objetos de búfer de vértice y matrices de vértices. El viejo modelo de transformación e iluminación se está yendo a favor de los sombreadores de fragmentos.

Sugiero comenzar con Joe Groff's intro to modern OpenGL, y obtener una copia de The OpenGL SuperBible, 5th edition, que cubre todas las nuevas formas de hacer las cosas.

5

Los mayores cambios estarán relacionados con el uso de sombreadores para todo. Aunque si solo quieres crear escenas simples, no necesitas usarlas.

Edición: Acabo de recibir la OpenGL SuperBible 5th Edition, también puedo hacerme eco de la recomendación de greyfade: esta es una muy buena introducción a las novedades.

+0

Usted * los necesita *. Si no especifica un sombreador y recurre a funciones GL antiguas a través del perfil de compatibilidad, entonces el controlador generará algún tipo de sombreador y lo usará automáticamente. :) Escribir sombreadores es más simple. – Kos

+2

Kos, dijo que no necesita USAR sombreadores. Y él tiene razón Todavía puede usar las llamadas antiguas a la interconexión de funciones fija sin saber nada acerca de los sombreadores y sin usar explícitamente sombreadores. –

2

En estos días, hay nuevas versiones de OpenGL (ahora estamos preparados para OpenGL 4), pero todas las cosas que hizo entonces funcionarán. A menos que esté haciendo algo especialmente complicado, probablemente no necesite hacer mucho para cerrar la brecha, aunque es posible que aún desee hacerlo.

1

NeHe está desactualizado la última vez que lo verifiqué. Todavía pasa por establecer la matriz mundial, texturas, opacidad, niebla, etc. a la tubería fija. Hoy en día todo se hace a través de sombreadores.

Las últimas lecciones pueden ir a través de sombreadores, pero hay que empezar desde cero. Si has hecho 3D antes, deberías poder alcanzar los sombreadores rápidamente.