martes, 5 de abril de 2011

Como Falsear Texturas/Materiales (Metales, Transparencias.. etc)

Esta técnica la encontré en un tutorial que explicaba como poner los MathCaps de Zbrush en
Blender (no le vi la importancia de tener ese material, seguramente la tenga)... Ahora bien, para
falsear los materiales es una técnica muy buena.
Imaginemos que queremos hacer un auto, el cual tenga un material bastante cromado. Esto
conllevaría a poner un material con reflejos (Ray Tracer) con lo cual los tiempos de render serian
excesivamente grandes.
Esta técnica nos permite hacer un material en una esfera y con algunos pasos, aplicárselo al modelo
conservando las propiedades que le habíamos puesto a la esfera.
Ejemplo:
Yo tengo a Suzanne (la monita) y quiero que tenga un material tipo oro: (tiempos en mi Equipo, en
algunos puede varias tanto para mas como para menos)
  • Material con Mirror (RayTracing): 23,9 segundos.
  • Material Falseado: 07,26 segundos



Como podrán ver el tiempo de render baja considerablemente.
Render Con el Material Real
Render Con el Falseado
Como ven arriba existen diferencias considerables entre las calidades de render, pero esto es
excelente para mostrar un render rápido o para el GE (Game Engine), no es para hacer renders
hiper-realistas.
Esta guía la voy a hacer tanto como para el Blender 2.4x como para el 2.5x.
Empecemos.............................










Una vez que sabemos que clase de material estamos buscando, Creamos una UV Sphere de 32x32 y
la suavizamos (Smooth en Shading)
debería quedar algo así:




Como pueden ver la cámara la acomode para que la bola este bien centrada, es una cámara
Orthographic y el render es de 720x720 para que quede la imagen mas cuadrada.
Ponganle al World una imagen ambiente si quieren algo mas general, pero lo que pueden hacer si ya
tienen una escena armada y quieren que se reflejen esos objetos.... pues pongan la bola en la
escena... o traten de hacer una panorámica de esa escena.


Una vez que tienen el world seteado van a renderizar, como podrán ver yo renderice con una
imagen hdri en el world y quedo un render así:
Este render lo guardan como jpg, png o el que
mas les guste (que sea soportado por Blender
jejeje)
Ahora abran la imagen en Gimp/PhotoShop o el
programa que usen para edición de imágenes.
En este programa seleccionen solo la bola
copienla y hagan con ella una nueva capa donde este la bola sola y el fondo sea transparente.
En la capa que quedo abajo van a llenarla con un color parecido al de los tonos medios o tirando a oscuros de la bola. (esto es a gusto)
Con esta nueva imagen (la bola con el fondo de color) lo que hacen es guardarla para despues usarla para el Falseo.



Esta es la imagen de la bola con el fondo ya cambiado.
Una vez guardado vamos a Blender y en el modelo que queramos falsear creamos un nuevo material.




















 Nuevo material en 2.4x





Nuevo material en 2.5x

















A este nuevo material le ponemos que sea Shadeless, en 2.5 lo encontraran en Shading y en 2.49 esta en la Pestaña Material primera linea ultimo botón.
No se asusten que el material se les tornara como si tuviera Emiter asignado.
Ahora le asignamos una textura tipo imagen y cargamos la bola con fondo de color que hicimos mas arriba.
Ahora la vamos a asignar a las normales, en 2.5 lo van a ver en Mapping → Coordinat abren el menú desplegable y seleccionan Normal.
En el 2.49 esto lo encontraran en Map Input → botón Nor
Esto es todo el misterio de falsear los materiales....
Si se quieren asombrar, pongan el Shading en Textured y activen la visualización por GLSL, en
Blender 2.5 esta en el panel que se llama con la letra “N” bien abajo Display → Shading ahi
cambian Multitexture por GLSL.
Esto es lo que verán:






Si mueven la vista verán como los reflejos actúan según el movimiento.
Y si quieren ir mas allá... hagan una lógica sencilla en GE donde 2 teclas giren a Suzanne para la
izquierda y la derecha... ahí verán como funcionan muy bien esta clase de materiales.
Otro uso que se puede dar, según escuche, es para esculpir tipo zbrush... sin tanto Spec molestando
pero jamas lo utilice y no se que tanto ayuda o no.