elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / c++ Opengl problema no puedo hacer un correcto movimiento de cámara con rotación en: 13 Noviembre 2015, 21:03 pm
estoy trabajando iluminación y sólidos de rotación con malla poligonal en mi clase. pero el problema que tengo es que para poder ver toda la escena necesito poder mover mi cámara apropiadamente, rotando y trasladandola cuanto desee, siempre caminando hacia donde mire.

pero
-si roto y después traslado la cámara caminara en una dirección incorrecta.
-si translado y después roto, rotara sobre su centro.
-y si convino traslaciones para reparar la rotación la traslación se daña y viceversa.

por si acaso esta es mi cámara actual

-todas mis variables están inicializadas en 0 y son flotantes
-r es mi angulo de rotación
-y f es una variable que aumento y disminullo por teclado para controlar el caminado

glMatrixMode(GL_PROJECTION);
   glLoadIdentity();
gluPerspective(65.0, 2 / 1, 1, 10);
float m[9];
   m[0] = cos(r);      m[3] = 0;      m[6] = sin(r);
   m[1] = 0;         m[4] = 1;      m[7] = 0;
   m[2] = -sin(r);      m[5] = 0;      m[8] = cos(r);
   
      
   float n[3];
   n[0] = d + f*dd + 0.0001*dd;
   n[1] = e;
   n[2] = (ss + f*jj) + 0.0001*jj;
   
   d = m[0] * n[0] + m[3] * n[1] + m[6] * n[2];
   e = (A*cos(W*tiempo) + H);
   j = m[2] * n[0] + m[5] * n[1] + m[8] * n[2];
   

   float w[3];
   w[0] = 0;
   w[1] = e;
   w[2] = 1;

   dd = m[0] * w[0] + m[3] * w[1] + m[6] * w[2];
   ee = (A*cos(W*tiempo) + H);
   jj = m[2] * w[0] + m[5] * w[1] + m[8] * w[2];

   gluLookAt(d+f*dd, e, ss+f*jj, d, e, j, 0, 1, 0);

por favor si me pudieran decir la forma correcta en que debo trasladar y girar mi cámara para poder siempre caminar hacia donde miro y rotar sobre mi eje se los agradeceria.

post-data: primera ves que uso este foro, no supe como utilizar bien lo de incluir codigo.Ademas me disculpo si cometo errores ortográficos.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines