Foros - Stratos

Programadores => Programación gráfica => Mensaje iniciado por: MChiz en 18 de Noviembre de 2002, 12:32:52 PM

Título: Ejes de coordenadas en Direct3D
Publicado por: MChiz en 18 de Noviembre de 2002, 12:32:52 PM
                                Hola a todos!

He empezado un motorcillo simple en OpenGL con la intencion de ir desarrollando paralelamente el port para DirectX. Ya tengo lo basico de los dos en funcionamiento pero tengo un problema: Los ejes :(
Me he encontrado que en Direct3D las X van hacia el lado opuesto que en OpenGL. Y me parece recordar que lei en los tutoriales de Berserker ( que por cierto, no me acuerdo de la pagina, alguien la tiene? :( ) que las Z tambien van al lado opuesto.
Alguien se ha encontrado con este problema? Que puedo hacer para transformar el sistema coordenadas de Direct3D en uno igual que al de GL?
Muchas gracias :(
Un saludo!                                
Título: Ejes de coordenadas en Direct3D
Publicado por: Haddd en 18 de Noviembre de 2002, 01:24:57 PM
                                La Z y la X van en la dirección negativa                                
Título: Ejes de coordenadas en Direct3D
Publicado por: _Grey en 18 de Noviembre de 2002, 03:20:56 PM
                                Quizas utilizas D3DXMatrixPerspectiveFovLH() para crear la matriz de proyeccion, si usas D3DXMatrixPerspectiveFovRH() crearas una basada en el systema de coordenadas de "mano derecha" que es el que usa openGL, en lugar de la de "mano izquierda" que es la "tipica"(o mejor dicho, por defecto) de Direct3D.


Por cierto, que yo sepa solo cambia la orientacion de la Z.

Saludos.

P.D.: Existen mas instrucciones comparables a esta analogia como:


D3DXMatrixOrthoLH
D3DXMatrixOrthoRH
D3DXMatrixOrthoOffCenterRH
D3DXMatrixOrthoOffCenterLH

D3DXMatrixPerspectiveFovLH
D3DXMatrixPerspectiveRH
D3DXMatrixPerspectiveLH
D3DXMatrixPerspectiveFovRH
D3DXMatrixPerspectiveOffCenterRH
D3DXMatrixPerspectiveOffCenterLH

Las terminadas en LH(Left-Hand) son para sistemas de "mano izquierda" y las terminadas en RH(Right-Hand) son para sistemas de "mano derecha".                                
Título: Ejes de coordenadas en Direct3D
Publicado por: MChiz en 18 de Noviembre de 2002, 10:17:15 PM
                                uoooooooooooh!!
Muchas gracias gente : ) Esta misma noche lo pruebo.
Graciaaaaaaaaas :´))))
Kisses kisses :bbb                                
Título: Ejes de coordenadas en Direct3D
Publicado por: Haddd en 19 de Noviembre de 2002, 12:07:17 AM
                                Ups. Es cierto, sólo la Z