2010-12-30 5 views
31

Acabo de comprar la quinta edición de OpenGL SuperBible. Estoy muy contento de que hayan evitado el uso de la funcionalidad en desuso, pero sus ejemplos hacen uso de GLTools. GLTools proporciona una serie de funciones útiles para renderizar objetos 3D simples y administrar la vista matrices de frustrum, cámara y transformación.¿Dónde puedo encontrar un buen tutorial en línea de OpenGL 3.0 que no utilice ninguna funcionalidad obsoleta?

Esto es genial, pero la abstracción proporcionada oculta detalles de bajo nivel y tengo dificultades para pasar al código donde no puedo usar GLTools - por ejemplo, pyopengl. La gran mayoría de los tutoriales que he visto en línea utilizan el modo inmediato, que trato de evitar. Los que usan glDrawArrays hacen uso de glEnableClientState, que también estoy tratando de evitar.

Lo que estoy buscando son tutoriales introductorios que sean totalmente compatibles con OpenGL 3.x. Si eso es demasiado alto para un pedido, tal vez una buena lista de lavandería funcione como "punto de partida".

+0

lo que está mal con la rasgadura de las secuencias de código que 'GLTools' está utilizando? – genpfault

Respuesta

41

Aléjate de NeHe, los tutoriales están desactualizados y contienen un montón de cosas "problemáticas" también.

Para comenzar con 3.x, tratar esos, los dos son de hasta al día:

Aurian (Joe Groff)

Arcsynthesis (Jason L. McKesson)

actualización :
Releyendo mi propia publicación casi 2 años después, supongo que uno puede encontrar que suena un poco dura.

Esto, por supuesto, no es la intención. El mensaje principal (que sigue siendo válido) que quería dar es que NeHe todavía se ocupa de OpenGL 1.x/2.x y utiliza algunas bibliotecas "antiguas" no compatibles.
En general, como tal, esto no significa que los tutoriales sean necesariamente incorrectos, pero a partir de allí significará comenzar dos generaciones detrás del estado actual de la tecnología y una generación detrás del mínimo debe saber. Legado de aprendizaje OpenGL requerirá, en un momento posterior, que olvide casi todo lo que conoce y vuelva a aprender desde cero.

Dicho esto, la página principal de NeHe ahora se vincula a un tutorial focussed on OpenGL 3.3 por Damien Mabin, que se ve bastante bien a primera vista (aunque no tendré tiempo de leerlo detenidamente antes de año nuevo).

+3

Acepto, y las bibliotecas antiguas como glaux.h ni siquiera son compatibles. El problema con la recomendación de NeHe se ve exacerbado por seguir siendo el resultado número uno de Google para el "tutorial de OpenGL". No es de extrañar que muchos todavía se arremolinen. –

+3

Consejo rápido: Al escribir estas líneas, el primer eslabón (Aurian) parece ser una introducción rápida y sucia para OpenGL, mientras que el segundo enlace que parece ser una visión más completa, profunda y (en mi opinión) más profesional de toda la API de especificaciones/C Personalmente encontré Archsynthesis 'invaluable. +1 de mi parte – Qix

+0

También: Ambos tutoriales usan funcionalidad anterior 3.0. – Qix

3

https://bitbucket.org/rndblnch/opengl-programmable

un breve tutorial paso a paso para OpenGL de programable (OpenGL/OpenGL | ES 2.x) para las personas que ya están familiarizados con la tubería fija. dependencias: python 2.5+, PyOpenGL 3.0.1+

Versiones sucesivas de un programa glut/opengl pequeño pero bastante completo que se inicia en modo directo y se transforma paso a paso para ejecutarse exclusivamente en la interconexión programable. Mire las diferencias entre las versiones sucesivas para destacar los cambios necesarios (p. Ej., https://bitbucket.org/rndblnch/opengl-programmable/changeset/b21131e37ed7).

Cuestiones relacionadas