jueves, 23 de agosto de 2007

Normal Mapping




Hoy utilizamos Normal Mapping para hacer una proyección de un objeto High Poly a uno Low Poly.
A diferencia de un mapa de Bump que contiene un plano de información (el de Z o altura), un normal map contiene 3 vectores de información X,Y,Z. Así cada pixel del normal Map codifica en que dirección está mirando. Es decir, cada pixel tiene información de relieve, pero no en tono de gris como el mapa Bump, sino que en RGB y es por eso que los detalles son rendereados más fielmente que el bump map.
El canal Rojo describe las normales mirando hacia el eje X.
El canal verde describe las normales mirando hacia el eje Y.
El canal B describe las normales mirando hacia el eje Z.
El normal Map también representa el ñangulo de las caras y curvas de ángulos complejos con mayor precisión.
¿Como se hace un Normal Mapping?
Se crean dos versiones del objeto 3D, uno de alto poligonaje, al que se le pone tanto detalle como se quiera. Luego ese mismo modelo se transforma a bajo poligonaje, clonandolo en la misma posicion para que quede alineado con el High Poly.
Luego en la Pestaña de Render se configura la parte "Render to texture" de manera que el Objeto High Poly se proyecte en el Low Poly. Así, podríamos hacer muchas copias del Low Poly y hacerlas ver como High Poly por medio de proyeccción. Al tener en la escena solo un High Poly que proyecta a los demás, significa un gran ahorro de render.

No hay comentarios: