Las Texturas son imágenes que se usan para crear Materiales que luego se mapean con coordenadas UV a modelos 3D.
Existen distintos tipos de texturas con las que se crean materiales, también denominados Mapas. En algunos casos las imágenes se usan directamente para verse en los materiales (Diffuse Map) y a su vez en los objetos que tienen esos materiales, o como mapas de información en donde los valores de los pixeles de las imágenes se usan como “mapas” (Normal Map, entre otros).
Ejemplo: Texturas de ladrillos
Diffuse Map.
Normal Map.
Roughness Map.
La suma de estos maps (o texturas) crean un Material.
Geometría texturizada en Unreal.
Tipos de texturas principales
Diffuse Map (Base Color)
Los diffuse Map (Base Color en Unreal) son aquellas imágenes que le “otorgan” el valor de sus píxeles, es decir su “color”, al modelo.
Normal Map
Las normales son los lados “positivos” de una cara. Esto permite generar la ilusión de profundidad de las texturas porque hace que coincidan las imperfecciones o particularidades en colores/pixeles del Base Map (o Diffuse Map) y la imperfecciones en el volúmen.
En la imagen se ven dos modelos idénticos pero con distintos Normal Map. En el modelo de la izquierda con menos contraste que en el modelo de la derecha.
Roughness Map
El mapa de aspereza tiene un rango de valores es de 0.0 (totalmente pulido) a 1.0 (totalmente rasposo o satinado)
Aplicación en Unreal
Al ir aplicando distintas texturas se pueden ir observando las diferencias sin que esto agregue vértices a la geometría original, en este caso un cubo.
Paso a Paso
Editor de materiales sin texturas conectadas.
Editor de materiales con textura conectada a Base Color.
Editor de materiales con textura conectada a Base Color y Roughness.
Editor de materiales con textura conectada a Base Color, Roughness y Normal.
UV Mapping
Los UV son coordenadas de textura bidimensionales que se corresponden con la información de los vértice de la geometría del modelo 3D. Los UV son vitales porque proporcionan el vínculo entre una malla de superficie y cómo se aplica una textura de imagen sobre esa superficie. Son básicamente puntos de marcador que controlan qué píxeles de la textura corresponden a qué vértice de la malla 3D.
De forma predeterminada, la mayoría de las aplicaciones 3D crean un UV automático al crear el modelo 3D. Sin embargo, si asignamos una textura a un modelo sin ningún ajuste es muy probable que no obtengamos los resultados esperados. Esto ocurre porque durante el proceso de modelado, los UV generalmente no se tienen en cuenta y, como resultado, la imagen 2D no puede envolver un objeto 3D de la manera que esperaría ver. Una vez que su modelo está finalizado, para texturizarlo correctamente es necesario comenzar el proceso de diseño de los UV (a menudo denominado mapeo UV). Este es básicamente el proceso de crear una representación 2D de su objeto 3D. Imagine su modelo desplegado y aplanado en una imagen 2D plana. ¿Dónde se producirían las costuras naturales? ¿En qué parte del modelo 3D se necesitarían más detalles? Esos son los tipos de cosas que deberá tener en cuenta al crear su diseño UV.
Mapeos estandard
Existen distintos mapeos de texturas estandard que pueden ser útiles para geometrías que no tengan gran detalle en el mapeo de textura y que su forma sea similar al de las primitivas básicas. Según en qué programa estemos mapeando texturas tendremos distintas formas de asignar los mapeos estandard.
Bake / Texture Baking
Bake (hornear) es un término que se utiliza para referirse al procesamiento de información que se almacena en un modo más simple para optimizar la visualización de los modelos, texturas e iluminaciones.
Existen distintos tipos: lighting baking, geometry baking y texture baking. En el caso del texture baking, lo que se hace es generar una simplificación y reducción de polígonos, trasladando la complejidad de la geometría a las texturas.
Por ejemplo, si modelásemos una pared de ladrillos con todos los polígonos y vértices que nos permitan tener todas las irregularidades de cada ladrillo, el tiempo de visualización sería muy lento porque tendríamos una cantidad inmensa de polígonos a renderizar. Pero si en cambio a partir de un modelo muy detallado generamos Diffuse Map, Normal Map y Roughness Map, estaríamos reduciendo la cantidad de vértices (pasaríamos de una “caja” por cada ladrillo y que a su vez cada ladrillo tendría todos los polígonos de cada irregularidad) a una sola caja con los mapas aplicados a una textura.