Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Duda Sobre Las Matrices Y D3d

Iniciado por _Grey, 05 de Mayo de 2004, 08:58:08 PM

« anterior - próximo »

_Grey

 Estoy leyendo el libro "Mathematics for 3D GamePrograming & Computer Graphics", y despues de ver el tema de las matrices y las transformaciones, y despues de leer el post de Haddd, me ha asaltado una duda.....:

Resulta que las matrices de este libro y las que se pueden ver en la documentacion de las Direct3D tienen cambiadas las columnas por las filas y viceversa.
Queria saber hasta que punto es correcto uno u otro, en algun doc sobre shaders (que no los he tocado ....) en alguna ocasion hacen referencia a cambiar las filas por las columnas antes de pasar los datos de la matriz al shader, es decir... que las deja como estan en el libro??. En fin que me tiene despistadillo :blink:  :blink: , cual es el correcto? ambos????

En direct3D los vertices se transforman como:
x'=xM11 + yM21 + zM31 + 1M41
y'=xM12 + yM22 + zM32 + 1M42
z'=xM13 + yM23 + zM33 + 1M43
Asi,  que, con las matrices del libro deberia de ser:
x'=xM11 + yM12 + zM13 + 1M14
y'=xM21 + yM22 + zM23 + 1M24
z'=xM31 + yM32 + zM33 + 1M34
o, no?

Puede que sea una duda basica, pero me confunde que esten "invertidas" las del libro con las de D3D.

Gracias.

Haddd

 La multiplicación de matrices se resuelve con multiplicación de producto escalar de 2 vectores si las matrices son del estilo OGL. Por tanto D3D al trabajar con shaders tiene que hacer la traspuesta. Pero si utilizas los effects de DX, al pasarle la mátriz, el propio effect traspone la matriz. Así que puedes asumir que no te afecta si usas effects.






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.