Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





OpenGL + Glut o Glow o que ?

Iniciado por mi-go, 18 de Diciembre de 2008, 08:38:58 PM

« anterior - próximo »

mi-go


Buenas!!
Vuelve el pesado de las preguntas  :P

Hace tiempo estuve metiéndome con OpenGL desde cero siguiendo principalmente este libro que tengo:
http://www.casadellibro.com/libro-open-gl-incluye-cd/2900001032046

Me gusta mucho el libro, pero trata OpenGL usando la librería Glut y cuando estuve haciendo algo más complicado que simples pruebas me vi obligado a usar Glow.
Glow es una adaptación de Glut a C++, pensado mejor para la POO.
http://glow.sourceforge.net/

El tema es que quiero volver a ponerme pero otra vez desde el principio con OpenGL, ahora que entiendo más cosas y me veo mucho más preparado para entederlo todo mejor desde el principio.
Pero tengo la duda de si volver a usar Glow o si habrá alguna otra cosa mejor.
En el libro hacen uso de Glut, por eso veo bien usar Glow, que tiene detrás todas las fuciones igualmente.

Pero ¿realmente este es buen método para empezar ahora o está demasiado desfasado?
¿O como es para aprender OpenGL sigue valiendo?

gracias!!
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

mi-go


Se me olvidaba aclarar que me interesa Glut o Glow por temas básicos de cambio de resoluciones, inicialización, Input.... y no por el tema GUI  de ventanas, botones y esas cosas, que de eso si se que hay muchas librerías.
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

Buffon

Cita de: mi-go en 18 de Diciembre de 2008, 08:43:20 PM

Se me olvidaba aclarar que me interesa Glut o Glow por temas básicos de cambio de resoluciones, inicialización, Input.... y no por el tema GUI  de ventanas, botones y esas cosas, que de eso si se que hay muchas librerías.

Yo no veo ningún impedimento en realizar ambos si lo que quieres es aprender.

cuando te pongas con cosas más serias utilizarás directamente un motor y te olvidarás de Glut o glow :P

mi-go

Sí, es para aprender.

Ya he tocado también un par de motores y he visto que todo es mucho más fácil.
Pero también he visto que viene muy bien saber más de la base.

A mi me gusta más usar un motor que hacerlo, porque me gusta más programar la lógica propia del juego, o meterme con la IA y cosas así que con los temas puramente gráficos.
Pero viendo cosas de como se programan esas otras áreas no gráficas te das cuenta que al final para entenderte con el juego te hace falta entenderte con los gráficos bien.
Que alguien me corrija si me equivoco.

También he visto FreeGlut... ¿alguien lo ha usado? ¿está bien pensado para POO? 
Porque GLOW está bien pensado para POO pero detrás es Glut y puede que arrastre posibles errores antiguos, FreeGlut es algo más moderno...

Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

JL10

#4
Hola mi-go... me encuentro en tu misma situación  :o... después de adquirir un cierto nivel de OpenGL practicando con glut, quisiera ya dar un paso más... y por ello estoy usando un framework que me aporte control de timer de alta precisión y fácil tratamiento de threads, (además de lo que glut tine de bueno: las inicializaciones de ventanas e inputs) por ello he escogido GLFW, échale un vistazo en esta dirección: http://glfw.sourceforge.net/, a ver si te sirve
Gracias

mi-go


Gracias JL10, pero creo que al final me voy a quedar con freeglut para seguir aprendiendo.
FreeGlut tiene los mismos comandos que glut, más algunos añadidos, y como se trata de aprender y el libro que tengo (que me gusta mucho) usa glut... me quedo con freeglut para seguir aprendiendo.

Después volveré a usar un motor que ya me lo de todo hecho, pero por lo menos he aprendido como funciona lo que hay por debajo.

Si estás pensando en usar glfw igual te interesa echarle un vistazo a SDL, que creo que es más usado.
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

JL10

Gracias mi-go por tu sugerencia de introducirme a SDL.......veo que hay mucha información sobre este framework, tan completo. Además me anima pues NeHe empieza a adaptar sus tutoriales a SDL y que quiere crear su framework basado en SDL http://nehe.gamedev.net/wiki/NewLessons.ashx (16/07/2008).

Ya conoces Glux? http://code.google.com/p/glux/ parace que soporta Opengl 3.0
Gracias

JL10

#7
por cierto mi-go... si tanto te gusta tu libro que nos mencionas y piensas darle una segunfa vuelta... te sugiero que la acompañes con la lectura de este otro: "OpenGL Programming Guide - The redBook (Addison-Wesley Publishing Comapny) http://www.opengl.org/documentation/red_book/ . Échale un vistazo en http://www.glprogramming.com/red/ , se trata de un nivel más elevado que complementará al libro que te sirve de referencia. Es muy bueno. ;)
Gracias

mi-go

Gracias, ese lo había visto ya.

Por cierto, por si te interesa algo del mío, jeje, el mío es la versión en español de OpenGL SuperBible y he visto que en su web tienen todo el código fuente de los ejemplos del libro:

http://www.starstonesoftware.com/OpenGL/

Seguro que le sirve a más de uno, están muy bien, además tienen unas funciones propias para poder girar y mover los objetos respecto a su posición.
Que a mí lo de pensar como tengo que multiplicar las matrices para hacer eso me cuesta... y eso es algo que realmente se escribe una vez, puedes ver como está hecho ahí.
Eso está en un archivo que se llama:  framemath.c

Yo, finalmente, voy a terminar de leermelo y a lo mejor hago alguna prueba con freeGlut, pero creo que voy a usar Irrlicht para hacer un jueguecillo y ya bajaré a Opengl si quiero meterle alguna cosilla propia, pero hacer todo el motor yo... por ahora me conformo con saber como funciona todo por debajo y dedicarme más a programar el juego en sí usando un motor.
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es

mi-go

Ahh, por si alguien toma de referencia el sistema de giros ese que he dicho del libro...
En la versión que yo tengo estaba mal el código de una función!!

Es la de rotar un objeto sobre su X local.
La función original empezaba así:

//  Rotate a frame around it's local X axis
void gltRotateFrameLocalX(GLTFrame *pFrame, GLfloat fAngle)
    {
    GLTMatrix mRotation;
    GLTVector3 vCross;

    gltVectorCrossProduct(vCross, pFrame->vUp, pFrame->vForward);



Pero no hacía bien el giro, debería ser así:
//  Rotate a frame around it's local X axis
void gltRotateFrameLocalX(GLTFrame *pFrame, GLfloat fAngle)
    {
    GLTMatrix mRotation;
    GLTVector3 vCross;

    gltVectorCrossProduct(pFrame->vUp, pFrame->vForward, vCross);



Nada más... por si acaso que yo ya me llevé un tiempo en darme cuenta de eso...
Web personal: www.javiermairena.net
The Game Kitchen: www.thegamekitchen.com
AccessAble Games: www.accessablegames.com
Blog Videojuegos Accesibles: www.videojuegosaccesibles.es






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.