Mapas procedurales para potenciar tus materiales

Mapas procedurales para potenciar tus materiales

Mapas procedurales:

El término “procedural” en informática. –

La palabra “procedural” es la forma de referirnos a un elemento creado por un conjunto de algoritmos en vez de manualmente.

Si nos ponemos puntillosos con el tema. El término “procedural” en si es en inglés. Si buscamos en el diccionario, descubriremos que el término correcto en castellano es “Procedimental” o “generado por procedimiento”. Pero nosotros nos referiremos al concepto con la forma en inglés (es más corta).

En CGI, normalmente se hace referencia a la creación de texturas o mapas procedurales porque son imágenes que se generan según ciertas condiciones o configuraciones de una planilla. Aunque también se puede hablar de modelado de geometrías procedurales o animación procedural.

En resumen, si la creación de un elemento, sea cual sea la finalidad, ha sido por medio de normas o de una planilla de características, en vez de manualmente, nos encontramos frente a un elemento procedural.

El objetivo de este artículo es demostrar las posibilidades que ofrecen los mapas procedurales para la creación de materiales complejos y dinámicos que puedan adaptarse a distintas necesidades que se puedan tener a la hora de hacer un render.

Mapas procedurales de Vray.

En 3DMax nos podemos encontrar con mapas procedurales de varias vertientes. Tenemos mapas procedurales compatibles con cada motor de render y algunos que son universales los mapas universales pueden venir de serie en Max o se pueden instalar como plugins.

En esta ocasión nos centraremos en la utilización de 4 mapas concretamente, procedentes del motor de Vray,

  • Vray Dirt
  • VrayDistance Text.
  • VrayCurvature
  • VrayTriplanar Text

Nuestros Ejemplos

Tres escenas en esta ocasión.

mapas procedurales

En este ejemplo usamos el mapa triplanar para mapear la textura del metal verde y luego usamos un mapa de curvatura para mezclar el metal verde con un metal más desgastado en las zonas de relieve que suelen ser las que tienen más contacto con otros elementos. Al ser un material procedural vemos que se adapta perfectamente a cualquier otro objeto (la pelota de la derecha) y que visualmente es llamativo en ambos casos.

mapas procedurales

En este ejemplo usamos un distance text tanto para el cambio de textura en el terreno en la zona «excavada» dónde se encuentra el gnomo, como el relieve mismo de la excavación realizado con un modificador displacement que usa el mapa de distancia para saber dónde tiene que cambiar. de material. El el nomo aplicamos un mapa de suciedad para contaminar con manchas y desgaste la textura origial del gnomo que en este caso si está mapeada.

mapas procedurales

El suelo de esta escena recibe el mismo tratamiento que en la escena del jardín, pero en vez de sólo dejar colores, hemos añadido mapas a las zonas de distancia. Dándo como reultado la zona «quebrada» por el choque de la nave.
La nave tieene dos materiales parecidos al soldado pero la máscara es un cpoo más compleja. La desarrollamos más adelante.

Materiales más elaborados y adaptables. –

Al margen de los pasos usuales que se dan para la creación de un material. (links a materiales y a mapas) existen formas de realizar ciertas mejoras o variantes que harán que nuestros materiales se vean más convincentes y más creíbles.

Características como el desgaste, las imperfecciones, el paso del tiempo, o la influencia del ambiente, se suelen pasar por alto cuando se crea el material.

Para ser honestos, si en lo que se piensa es en arquitectura e interiorismo, los materiales “impolutos” son los que se prefieren.

Pero el CGI sirve para más cosas. Películas, documentales, animaciones o incluso infografías, pueden necesitar de un material más acorde con una realidad en etapas distintas a la de “salido de fábrica”.

Marco teórico

A continuación, procederemos a detallar las características de cada uno de los mapas procedurales y su funcionamiento. Luego los pondremos en práctica con algunas escenas.

Un factor común a todos mapas (a la mayoría de ellos porque el tri planar es algo peculiar), es que en su presentación inicial generan un mapa blanco / negro.

Según lo aprendido de 3D, blanco y negro son los extremos que gráficamente sirven para representar el 100% y 0% de un valor respectivamente. Los valores de gris intermedio son también porcentajes intermedios entre estos dos extremos.

Para que el efecto sea apreciable inmediatamente, procederemos a conectar los mapas procedurales al canal de difuso. Ya que el feedback del efecto puede verse con sólo renderizar la escena.

VrayDirt. (mapa de suciedad)

Para explicar el efecto de este mapa contamos con esta escena.

mapas procedurales

El material con el Dirtmap en el difuso es la tetera y los objetos de interacción son las dos cajas que servirán a modo de suelo y pared.

Como habíamos mencionado antes, este mapa es representado por blanco y begro y escala de grises. El mapa se genera en base a la proximidad de la tetera con otros objetos o entre la proximidad de sus elementos.

mapas procedurales

El efecto viene a ser el equivalente a una oclusión ambiental. (sombra de contacto)

Para que no se confunda con este fenómeno, cambiamos temporalmente el color negro a un color morado para ejemplificar.

mapas procedurales

En la captura podemos ver que la misma tetera vierte un poco de color morado en las zonas en las que los elementos de esta (tapa cuerpo asa, etc.) se encuentran cercanos entre ellos.

El factor “distribución” es el que se encarga de decir cuán fuerte será a presencia del color en las zonas “ocluidas”. En el caso del a captura. Hemos cambiado de 1 a 7 para hacerlo más evidente.

La distribución es el unico criterio para definir la intensidad de este procedural. Se le puede añadir un mapa «color correction» para intensificar el contraste si fuera necesario.

En cuanto acercamos la tetera a la caja que hace de suelo observamos que esta se tiñe para indicar qué parte de ella está siendo afectada.

Si la acercamos a la confluencia de las dos cajas el Teñido se pinta en forma de L para la tetera.

Como vemos el efecto es universal en el sentido de que basta con acercar el objeto a otros para recibir un tinte “interactivo”. Recordemos que el hecho de ser procedural es justamente que se va adaptando a cada situación en base a sus reglas.

mapas procedurales

Como aspecto a mencionar, diremos que dentro del mismo mapa existe la opción de “ignorar” algunas geometrías para que no las tome en cuenta para crear el dirtmap.

También, podremos hacer el resultado del mapa más “orgánico” si en vez de sólo poner un color para nuestra zona ocluida, elegimos un mapa. Las posibilidades son muy variada y versátiles.

mapas procedurales

El resultado adecuado o deseado suele ser producto del ensayo / error porque suele depender mucho de los tamaños y formas del objeto al que queremos dotar con este mapa.

Vraycurvature map. (mapa de curvatura).-

El mapa de curvatura es un mapa que se ha ganado muy buena fama. Es un mapa que determina las zonas cóncavas y convexas de un objeto. Omite las zonas de superficie regular y por eso ayuda a identificar los extremos o cambios drásticos de superficie.

mapas procedurales

En la captura observamos que la esfera de la izquierda, al ser regular en superficie, a pesar de tener aplicado el mapa de cuvatura no nos muestra ningún color extremo.
Mientras que en las otras dos figuras las cavidades son más oscuras y las protuberancias o relieves son más claros. Depende de la geometría.

VrayDistance Text.-

Este mapa tiene un efecto parecido al Dirtmap, En este mapa lo que se debe hacer es elegir el o los objetos a los que debe tener en cuenta para generar el mapa blanco y negro. Otra diferencia es que este mapa no toma en consideración los elementos de su mismo objeto para crear el degradado de blanco y negro.

mapas procedurales

Esta es la escena que nos sirve para explicar el distance text.
Una esfera y un plano. siempre estará presente tambie´n una lluz de vray.

Por último, mientras que el Dirt map tiene el efecto de una sombra de oclusión. El Distance Text considera tres zonas efectivas. La zona de contacto, hacia dentro de esta zona y por fuera de ella. Es, por tanto, una versión más elaborada de mapa.

Triplanar Map.-

Este mapa es procedural en naturaleza, pero combinado con bitmaps tiene potencialidades bastante sorprendentes.

Podría ser considerado como “hacer trampa”, pero no está mal saber usarlo.

Concebido en principio como una forma de texturizar ciertas superficies sin necesidad de un desplegado adecuado. Ahora puede servir para generar variedad y un aire orgánico o caótico a nuestros materiales.

Su premisa es simple. A falta de una correcta proyección de UV para un mapping tradicional, usaremos como punto de referencia las tres coordenadas locales del objeto y proyectaremos a partir de una forma cúbica. Además, para no crear costuras en la confluencia de las esquinas de ese cubo, crearemos mediante este mapa una transición de mezcla. Que nos permita salir del paso de forma airosa.

mapas procedurales

Para el ejemplo, hemos asignado tre colores al mapa triplanar. Pro defecto esto no es posible así que hay que asegurarse de elegir la opción «different texture on each axis» del desplegable «texture mode»

Repetimos que no sirve para todo tipo de texturas, pero si para aquellas que no precisan de un lugar demasiado específico en el objeto.

mapas procedurales

La opción Blend me permite decidir cuánto de cada eje de textura va a mezclarse con la textrua del otro eje. De esta forma se crea un «mapping» casi «seamless»

mapas procedurales

Recordar que el espacio de ejes que usa es el local de cada objeto.

Si en vez de elegir una textura para cada eje, elegimos que será una la que se distribuya por X, Y y Z, nos encontraremos con un «empapelado» bastante congruente para la geometría. Es muy aceptable considerando que no se apoya en las UVs.

Workflow genérico para los tres casos. –

En todas las situaciones el procedimiento general ha sido el siguiente.

El material final es generalmente un VrayBlend material (o cualquier otro multi material qwue acepte capas y máscaras, correspondiente al motor de render que se utilice)

Los tres primeros procedurales se utilizan en esta ocasión como máscaras para

El mapa triplanar se utilizará como catalizador para evitar el proceso de mapping y para máscara cuando proceda.

También se hará uso de algún que otro mapa procedural de los que viene por defecto en MAX.

Las escalas de los objetos son determinantes a la hora de aplicar correctamente la mayoríade mapas. No olvidar que todo debe estar al 100% de su tamaño.

Debido a que el resultado de la aplicación de los mapas no se puede apreciar en el visor en modo de vista previa, para poder calibrar y aplicar un resultado adecuado se hará siempre un material con el mapa procedural instalado en el canal de difuso. Luego de obtener lo que se quiere, pasaremos a aplicar el mapa en el sitio que le corresponda.

Escena 01.-

mapas procedurales

Aquí tenemos dos objetos de formas de construcción diferentes.

El primero es un modelo escaneado, con todo lo que conlleva porque tiene triángulos en vez de Quads y está mapeado de una forma incoherente para texturizar de forma voluntaria.

El segundo es un objeto sencillo pero tamcpoo está mapeado, porque de la forma en la que está construido podemos intuir que se encuentra en la etapa de concept.

El material principal es un material Vray Blend que se encargará de mezclar dos materiales. (uno metálico verde y uno metálico más desgastado).

Como habíamos comentado, primero creamos un material Vray y le asignamos el mapa de curvatura en el canal de difuso.

Con los diales del formulario hacemos pruebas para que nos quede una especielde degradado bastante acusado entre blanco y negro. Si no fuera demasiado nítido el tramo de gradiente se puede recurrir a un mapa de correción para acentuar el contraste.

También hay que tener la escala de los objetos lo más fiel posible. Debemos usa rel Reset Xform.

La g´rafica del material vá así.

Escena 02.-

mapas procedurales

Para el segundo casotenemos dos elementos interactivos entre sí. El suelo y el gnomo de jardín.

El suelo recibe el tratemiento del mapa de distancia.

Una peculiaridad del mapa de distancia es que se puede aplicar de un objetoa otro, pero no del segundo al primero. es decir que sólo puede ser usado para definir la distancia del objeto A contra el objeto B, pero si queremos aplicar un mapa de distancia al objeto B para tener un mismo resultado respecto a la distancia con el A nos sale un aviso que nos dice queno puede generarlo.

Sólo puede ser usado en una dirección. y por eso tuvimos que usar el mapa de dirt para el contacto del gnomo contra el suelo.

Al Dirt map del gnomo le añadimos otro mapa también procedural para que «rompa» un poco con el degradado homogéneo y cree más variedad.

La geometría del suelo es un plano muy subdividido para que el modificador displace haga su magia.

En este  caso en concreto no se podía hacer uso de un Vraydisplacement mod porque luego la cercanía del gnomo con el suelo no sería física sino calculada en momento de render. Esto no es conveniente.

Sólo por logística, el muro de atrás está puesto para que la camara no capture en el render la falta de resto de escenario.

 

Escena 03.-

mapas procedurales

Como podemos ver, el materil puede ser tan simple o tan complicado como uno quiera. Y habrá ocasiones en las que lo que se combine sea mala idea porque tarda mucho en calcular. Hay que documentarse de las limitaciones y posibilidades de cada mapa. La misma página de ayuda de Chasougroup advierte que no se puede mezclar algunas cosas y los casos en lso que debe evitarse.

Concluciones.-

Los mapas procedurales (y cualquier elemento procedural en general) constituyen una ventaja indiscutible a la hora de ser creativos y eficientes. Se adaptan a distintas situaciones y pueden ser un buen aliado si se preparan correctamente.

Como en todo, la preparación es la parte tediosa pero el beneficio que se obtiene bien vale la inversión de tiempo. El resultado ideal suele ser un producto del Ensayo/Error porque no siempre existe una forma de ver el resultado sin realizar el proceso de render final. Por tanto, su calibración también ocupa tiempo.

Los mapas procedurales no requieren ser almacenados en una carpeta como un mapa de bits, sino que, al ser calculados “sobre la marcha”, están de alguna manera imbuídos dentro del archivo de MAX.

Como contra podemos decir que, los mapas procedurales suelen ser exclusivos de sus motores de render, justamente por la sincronía que tiene que tener para portarse eficiente.

Los mapas que son independientes del motor de render, por ejemplo, los OSL (open shading language) están ganando popularidad. Aunque su curva de aprendizaje no es demasiado directa.

Los procedurales consumen RAM. Son procesos que se calculan y deben almacenarse en algún sitio de forma temporal. Si es necesario, existen formas de “convertir” o trasladar la información de un procedural a un mapa de bits, perdiendo la adaptabilidad.   El proceso puede ser un simple bake (para este proceso es necesario y obligatorio cualquier ti por de de desplegado de textura.

Una vez preparados, hallar variantes y disfrutar de ellas es un verdadero placer.

Existen muchas maneras de portarnos artísticos con el CGI. Solo es cuestión de aprender a usar todo lo que nos ofrece, que en estos tiempos es mucho.

 

Escribe un comentario