7. Mapeando la casilla (modificando las coordenadas de mapeo)Llegados a este punto del modelo (que no ha finalizado, advierto
) vamos a intentar exportar una primera versión para ver como va el proceso en el simulador. También, de paso, nos familiarizaremos con el proceso, ahora que tenemos una malla simple, y antes de que no sepamos si los posibles problemas de exportación son debidos al modelo o al procedimiento en sí. Pero para poder exportar cualquier objeto es imprescindible que previamente esté texturado, por tanto procederemos a generar y mapear una primera versión de texturas.
El primer paso será generar el "mapeo", o mapa de coordenadas", de los diferentes polígonos de los objetos que tenemos, a saber: 1_1250_Casilla, 1_0256_Tejado y 1_0128_Chimenea. En este caso vamos a optar por englobar todas estas texturas en una única "hoja de textura" (o archivo de imagen .ace).
El segundo consistirá en crear la hoja de textura con las imágenes que "vestirán" nuestro modelo. Esto lo realizaremos fuera del 3ds Max, mediante algún programa de tratamiento y edición de imágenes.
El tercer y último paso consistirá en crear un material basado en la "hoja de textura" que acabaremos de crear, y en asignarlo a los objetos del modelo, que, como ya tendrán generado el "mapa de coordenadas", facilitará la operación de mapeo (vamos, que no lo tendremos que realizar porque ya estará hecho).
Pero vayamos por partes:
7.1 Generación del mapeo.Como queremos que los tres objetos compartan una misma hoja de texturas, empezaremos por seleccionarlos todos. Podemos pinchar con el ratón en un viewport y crear un área que los incluya a todos, o, en este caso, desplegar el menú "Edit" y seleccionar "Select All":
También observamos que podríamos haber realizado esta operación más directamente mediante el teclado, con "Control" + "A". Con el tiempo las operaciones más habituales las tenderemos a realizar con el teclado, una vez memorizadas las combinaciones de teclas más usuales, pero por ahora esto no debe preocuparnos. Usemos el método con el que nos encontremos más cómodos.
Una vez seleccionados los tres objetos (recordemos que individualmente ya los habíamos convertido en "Editable Poly", si no fuera así deberíamos realizar esta operación antes de seguir) procederemos a aplicarles en conjunto el modificador "
Unwrap UVW", para ello:
- Desplegaremos la lista de Modificadores y buscaremos "Unwrap UVW". Hay que bajar hasta el final pues están por orden alfabético.
- Desplegaremos el modificador para seleccionar que vamos a trabajar con las caras de los objetos "Faces".
- Una vez especificado el modo de operación debemos indicar sobre qué caras o polígonos ("Faces") vamos a trabajar. En este caso (la casa es grande y no repara en gastos) vamos a seleccionarlos todos, para lo cual un "Control" + "A" nos irá muy bien y será más efectivo (no nos dejaremos ningún polígono).
- Pues llegados a este punto, en que ya tenemos seleccionadas las caras a mapear, no nos queda más que empezar la operación pulsando el botón "Edit" del modificador "Unwrap UVW".
Esta acción nos ha abierto el editor de coordenadas UVW ("
Edit UVWs"), con una visión que dispara nuevamente la "acojonalina", ahora precisamente que ya no nos pasaba esto gracias a la desenvoltura que habíamos conseguido. Serenémonos que no es tan grave.
Primero describiremos lo que se ve en esta ventana. Esta es una representación de todos los polígonos sobre los que estamos trabajando. Podría ser uno sólo, proceso más cómodo posiblemente, o podrían ser, como en este caso, todos los del modelo. Efectivamente se muestra cada polígono (en rojo) y el área sobre la textura que va a usar para su texturado. Como en este caso no hemos dado aún ninguna posición (coordenadas UV) a ningún polígono, todos ellos aparecen superpuestos creando una maraña de mapeo (no pasa nada, tranquilos).
Además tenemos un conjunto de herramientas para modificar los mapeos de los polígonos. En
nivel UP nos bastará tener presente:
- Mode Tools. Permiten seleccionar el modo de trabajo del (o de los) polígono seleccionado, a saber: "Move Mode", "Rotate Mode", "Scale Mode" y "Freeform Mode". Los tres primeros nos recuerdan las herramientas "Select and Move", "Select and Rotate" y "Select and Scale" para manipular objetos, pero en esta ocasión manipularemos mapeos.
- Mirror Tools. Permiten "flipar" (invertir) los mapeos en horizontal y vertical. De momento lo podemos olvidar.
- Texture Selector. Nos facilita seleccionar una de las texturas que tenga asignado el material del objeto, o bien un fondo de cuadros, para situarla de fondo a los mapeos de los polígonos. Como no hemos asignado ningún material aún a los objetos con los que estamos trabajando no nos queda más alternativa que visualizar el fondo a cuadros, pero en otras ocasiones nos facilitará el visualizar dichas texturas.
- Info Area. Al igual que el área de información del editor 3D, nos permite manipular de forma numérica las coordenadas de mapeo de los elementos seleccionados (un vértice, una arista, un polígono...).
- View Tools. Nos permitirán desplazar la vista, hacer zoom, etc... para trabajar con mayor precisión. En caso de "perder el mundo de vista" el botón Zoom Expand, al igual que en el editor 3D, vendrá en nuestra ayuda al resituar las texturas en el centro de la ventana y ajustar el zoom para no perder ninguna de vista.
Visto lo cual, en nuestro caso vamos a usar la opción "
Mapping" del menú de la ventana, que produce un mapeado "automático" de los polígonos en la "hoja de textura". Al desplegar el menú "Mapping" nos aparecen tres alternativas posibles para aplicar el mapeo; en el nivel UP nos quedaremos con la primera, "Flatten Mapping" (mapeo plano) para todos aquellos objetos "cúbicos" como nuestro edificio (basados en cubos orientados perpendiculares a los ejes X, Y y Z), o bien con "Normal Mapping" (mapeo basado en normales) para objetos con mayor complejidad en la orientación de sus caras y con profusión de cilindros o esferas; aunque podemos "experimentar con otras y observar los resultados obtenidos.
Por tanto en nuestro caso elegiremos "
Flatten Mapping" aceptando las opciones por defecto que nos presenta. Veremos que los polígonos se han distribuido por la hoja de texturas de forma más comprensible a nuestra neurona:
Podemos identificar las fachadas anterior y posterior, aunque estén giradas 90º; el tejado (tres veces, es correcto: una para la cara superior del objeto Casilla, y dos para las caras superior e inferior del objeto Tejado); las fachadas laterales, aunque la herramienta las haya situado una arriba y otra abajo; los frontales (invertidos) y laterales del tejado; el disco que corresponde al polígono superior de la chimenea; y los cuatro laterales de la chimenea, uno por cada orientación de esta en los ejes norte, este, sur y oeste. Vamos, que esto es una descomposición "planar" (vista plana desde cada una de las seis direcciones en el espacio) del mapeo de nuestro objeto.
Además ningún mapeo se superpone, cosa importante. Tal como está podemos dejarla y trabajar con ella, o bien podemos editar los mapeos para resituarlos en la hoja de texturas si nos interesa. Por ejemplo, los cuatro mapeos del cuerpo de la chimenea han ido a parar cada uno a donde ha querido. Podéis trabajarlos y jugar un poco eligiendo la herramienta "Move Mode" y pinchando en algún polígono para desplazarlo a otra zona. También los podéis seleccionar creando un área que los englobe. Si seleccionáis tan sólo un vértice sólo desplazareis dicho vértice, y si seleccionáis solamente una arista desplazareis sólo la arista. También con la herramienta "Rotate Mode" podéis intentar enderezar las piezas que están giradas, aunque esto no es imprescindible en absoluto. Si observamos la zona inferior de la ventana, a la derecha de ésta, tenemos dos botones muy simpáticos que indican "Rot. +90" y "Rot. -90", y que nos ayudarán a enderezar las piezas si lo deseamos.
En mi caso he estado "jugando" con los mapeos hasta conseguir esto, que me ha parecido más ordenado para poder trabajarlo más tarde:
Es importante que no ocupemos toda la hoja de texturas, sobre todo si pensamos que al modelo le vamos a añadir nuevos componentes más tarde, como será nuestro caso, por lo que os recomiendo que ajustéis los mapeos de forma que os dejen espacio libre.
Si esta distribución de los mapeos nos es satisfactoria, podemos proceder a generar un archivo de imagen con una plantilla de dichos mapeos. Para ello, desde el mismo "Editor UVW", desplegamos el menú
Tools y seleccionamos el comando "
Render UVW Template". Éste nos abrirá un cuadro de diálogo (ver imagen inferior a la izquierda) donde informaremos del tamaño de la textura que deseamos (en este caso 1024 x 1024) y seleccionaremos el modo de relleno de las zonas de mapeo como "Normal". Podéis probar otros modos, pero éste me gusta por lo colorido que es
y porque en realidad el color representa el valor de dirección de un vector (o
normal) que partiendo del centro del objeto atraviesa un píxel en concreto de la superficie del objeto, representando dicha dirección como un color en una esfera de 360º de tonos de color. Dicho de otra forma, si os fijáis en la fachada anterior de la casilla (abajo a la derecha de la hoja de texturas) veréis que la esquina derecha es rosa y la izquierda azul. La fachada lateral que está a su lado empieza en el tono azul anterior y termina en un tono verde. Esas dos aristas del mismo tono de azul nos indican que en el modelo son contiguas
Le daremos al botón inferior "
Render UV Template" para que nos genere la plantilla:
Si algún mapeo se superpusiese a otro lo veríamos remarcado en rojo (o en el color que hubiésemos seleccionado en el panel anterior). Es importante que esto no se produzca, pensando que más tarde vamos a querer aplicar "sombras precalculadas" a la textura (si suena como a muy importante, pero no os dejéis impresionar por las palabras, de momento olvidaros de eso de las sombras).
En la nueva ventana pulsaremos el botón "
Save Image" (disquette) para generar el archivo de imagen de la hoja de textura que guardaremos en el subdirectorio "textures", en el formato que mejor nos vaya, por ejemplo BMP, y dándole un nombre suficientemente significativo, por ejemplo, "ES_Casilla.bmp".
Llegado a este punto, y una vez satisfechos del trabajo realizado, salimos de la ventana de "Edición UVW" y procedemos a guardar la casilla para poder tomarnos un descanso.