Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Duda de transformaciones

Iniciado por DiegoBM, 08 de Diciembre de 2008, 01:43:11 PM

« anterior - próximo »

DiegoBM

Hola Gente,

Me estoy metiendo a saco con todo el tema de los shaders, en concreto le estoy dando vueltas al normal mapping, y aunque en general me entero de todo, no comprendo por que a la matriz de cambio de base se le tiene que multiplicar por la traspuesta de la inversa de la matriz WorldView. Entiendo que hay que multiplicarla por la WorldView para aplicarle a cada vector del cambio de base las transformaciones que se aplican al vertice, pero ¿por que por la traspuesta de la inversa? He leido por ahi que a las normales hay que multiplicarlas por la traspuesta de la inversa de la matriz de tranformacion para que el resultado sea correcto, pero no le veo sentido. Si alguien pudiese explicamerlo asi en plan sencillito para torpes... ^_^U.

Muchas gracias y saludos!

DiegoBM

Wop! Pues ya he dado con la tecla. Por si alguien tiene la misma frustrante necesidad de entenderlo todo y se estaba haciendo la misma pregunta, he aqui la respuesta. Bajo el apartado "Transforming Normals".

http://fly.cc.fer.hr/~unreal/theredbook/appendixg.html

Un saludo!

fjfnaranjo

Wenass. Gracias por aclararlo con la solución que tu mismo encontraste. Un saludo.
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

DiegoBM

No hay de que :). Por cierto, por si alguien tiene problemas con el idioma de Shakespeare, os dejo otro enlace, esta vez en castellano, con todo el desarrollo matematico de forma clara (excepto un punto quiza, que si alguien no lo ve con gusto se lo aclaro) y aparte una explicacion gráfica bastante bastante clara de por que hay que aplicarselo solo a las normales (las tangentes se pueden transformar con la matriz de transformacion normal):

http://www.inmensia.com/articulos/raytracing/interseccion.html?pag=2

Nota: Por si alguien se pregunta por que se aplica a todos los vectores del cambio de base si no son normales a ningun poligono, solo decir que en realidad estos vectores son normales a cada uno de los 3 planos que definen la nueva base (y por tanto se aplica la misma regla de los planos) :D.

Un saludo amigos!






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.