2011-04-09 18 views
8

Todavía tengo que encontrar un buen recurso que no incluya GLUT ya que es back-end. Seguro que están los tutoriales de Nehe, pero los encuentro un poco oscuros. Utiliza la API de Win32, pero quiero realizar un desarrollo multiplataforma. GLUT está destinado para Windows en lugar de los otros 2, aunque se supone que es multiplataforma. ¿Cuáles son algunos buenos recursos que enseñan OpenGL sin GLUT? Y por favor no sugieras FreeGLUT, eso es básicamente GLUT una vez más.¿Aprendizaje de OpenGL sin GLUT?

+2

Si está intentando aprender _OpenGL_, ¿por qué preocuparse por el back-end? En el código de gráficos típico, el impacto es mínimo. Por lo general, se abstrae de todos modos. Aprenda OpenGL primero en cualquier plataforma/backend que tenga en ejecución, preocúpese más tarde por el back-end y la plataforma cruzada. –

+0

http://stackoverflow.com/questions/879035/initializing-opengl-without-glut –

Respuesta

3

No veo cómo FreeGLUT se orienta más hacia Windows que cualquiera de los otros sistemas operativos principales: API es multiplataforma y FreeGLUT es un proyecto muy estable que funciona bien en los sistemas operativos que afirma tener. apoyo. ¿En qué evidencia basa su reclamo? Dicho esto, puede usar SDL o las API JogAmp. Este último, sin embargo, está escrito en Java, pero si está tan preocupado por mantener el soporte multiplataforma sin ninguna recompilación del código fuente, entonces puede considerar la programación en Java. Las API de JogAmp incluyen soporte para OpenGL, OpenCL, OpenMAX y tienen soporte para ventanas nativas livianas, por lo que la penalización de rendimiento no debe ser muy drástica. Además, JOGL proporciona soporte para varios perfiles OpenGL y facilita la tarea de elegir qué versión mínima de OpenGL le gustaría admitir en sus aplicaciones.

8

Lo más importante es que usted ya entendió que OpenGL no está relacionado con GLUT. Y sí, hacer todas esas cosas específicas del sistema operativo usted mismo se vuelve tedioso.

Ahora recomiendo a las personas que utilicen GLFW http://glfw.org, una excelente estructura OpenGL con soporte completo para OpenGL-3 y mecanismo de carga de extensión integrado. En lugar de tener un bucle de evento de caja negra, como GLUT, GLFW le da un control total sobre cómo se procesan los eventos.

Una vez que sus demandas se vuelven más avanzadas, puede terminar escribiendo su propio marco, pero para la mayoría de los proyectos, GLFW es una excelente opción.

Y, por supuesto, la mayoría de los kits de herramientas tradicionales como GTK +, Qt, wxWidgets, Fox ... proporcionan algún widget OpenGL.

1

Salida del código de http://www.galaxy-forces.com/

Se inicializa y utiliza OpenGL y sin exceso u otras bibliotecas. Windows, Mac y Linux son compatibles.

Me doy cuenta de que hay razones para no querer usar otras bibliotecas ... Todas las demás respuestas intentan utilizar otras bibliotecas.

Supongo que esta respuesta hace lo mismo, pero al menos tendrá el código. Todo es de dominio público.