SoloCodigo

Programación Específica => Programación de Videojuegos => OpenGL => Mensaje iniciado por: Perla_kiko en Viernes 7 de Octubre de 2005, 12:16

Título: Trabjar Con Translatef
Publicado por: Perla_kiko en Viernes 7 de Octubre de 2005, 12:16
Hola trabajo con esta funcion y me gustaria saber como saber en que posicion tengo el dibujo para trasladar el eje dependiendo de este valor que busco
Título: Re: Trabjar Con Translatef
Publicado por: Petabyte en Sábado 15 de Octubre de 2005, 16:40
Creo que no puedes saber en que posicion tienes el dibujo porque con glTranslate lo que haces es modificar la matriz que es como si fuera un cursor.

Yo creo que lo mejor es asociar a cada objeto su posicion correspondiente que iremos modificando convenientemente y luego situar la matriz en el lugar de la posicion del objeto.

Aunque tambien si quieres trasladarlo a un lugar concreto tienes que reiniciar antes en la posicion de origen con glLoadIdentity();

si quieres dibujar algo en la posición 200,422,42

glLoadIdentity();
glTranslatef(200,422,42);
Título: Re: Trabjar Con Translatef
Publicado por: Perla_kiko en Jueves 11 de Mayo de 2006, 16:30
más exactamente lo que yo quiero es primero dibujo desde un punto que ya he hecho, hasta aqui ningun problema. Pero depues quiero poder hacer rotar la escena desde varios puntos , es decir tendria que cambiar el punto (0,0,0) a otro lugar, para que cuando me rote el objeto lo haga desde otro eje central, no se si me explico

Imagina te que tienes dos lineas y un cuadrado que la une

pues yo quiero poder rotar desde el centro del cuadrado y despues cambiar y rotar desde la punta de un de la lineas o desde la otra punta
Título: Re: Trabjar Con Translatef
Publicado por: PENTEX en Viernes 12 de Mayo de 2006, 01:18
Lee algo de matrices, transformaciones y del modelo ModelView en OpenGL, recomendable el red - blue book, la superbiblia o el OpenGL referece Guide.

Camilo.
Rune GameDev (http://runegamedev.awardspace.com/)

Grupo PENTEX