Mapeado de texturas


El mapeo de texturas [1] [2] [3] es un método para definir detalles de alta frecuencia , textura superficial o información de color en un gráfico generado por computadora o modelo 3D . La técnica original fue iniciada por Edwin Catmull en 1974. [4]

El mapeo de texturas originalmente se refería al mapeo difuso , un método que simplemente mapeaba píxeles de una textura a una superficie 3D ("envolviendo" la imagen alrededor del objeto). En las últimas décadas, el advenimiento del renderizado multipaso, multitexturización , mipmaps y mapeos más complejos como el mapeo de altura, el mapeo de relieve , el mapeo normal , el mapeo de desplazamiento, el mapeo de reflexión, el mapeo especular , el mapeo de oclusión y muchas otras variaciones de la técnica (controlado por un sistema de materiales) han hecho posible simular casi fotorrealismo en tiempo real al reducir enormemente la cantidad de polígonos y cálculos de iluminación necesarios para construir una escena 3D realista y funcional.

Amapa de textura [5] [6] es una imagen aplicada (mapeada) a la superficie de una forma opolígono. [7] Puede ser unaimagen de mapao unatextura de procedimiento. Pueden almacenarse enformatos de archivo de imagen comunes, referenciados porformatos de modelos 3Dodefiniciones de materiales, y ensamblados enpaquetes de recursos.

Pueden tener de 1 a 3 dimensiones, aunque las 2 dimensiones son más comunes para las superficies visibles. Para su uso con hardware moderno, los datos del mapa de textura se pueden almacenar en ordenamientos swizzled o en mosaico para mejorar la coherencia de la memoria caché . Las API de representación normalmente administran los recursos del mapa de texturas (que pueden estar ubicados en la memoria del dispositivo ) como búferes o superficies, y pueden permitir la " representación de texturas " para efectos adicionales como el procesamiento posterior o la asignación de entornos .

Por lo general, contienen datos de color RGB (ya sea almacenados como color directo , formatos comprimidos o color indexado ) y, a veces, un canal adicional para la combinación alfa ( RGBA ), especialmente para vallas publicitarias y texturas de superposición de calcomanías . Es posible usar el canal alfa (que puede ser conveniente para almacenar en formatos analizados por hardware) para otros usos, como la especularidad .

Se pueden combinar varios mapas de textura (o canales ) para controlar la especularidad , las normales , el desplazamiento o la dispersión del subsuelo, por ejemplo, para la representación de la piel.


1: modelo 3D sin texturas
2: Mismo modelo con texturas
Mapeo de una textura bidimensional en un modelo 3D
Ejemplos de texturas múltiples :
1: esfera sin textura, 2: mapas de textura y relieve, 3: solo mapa de textura, 4: mapas de textura y opacidad
Debido a que el mapeo de texturas afines no tiene en cuenta la información de profundidad sobre los vértices de un polígono, donde el polígono no es perpendicular al espectador, produce un defecto notable.
El motor Doom renderiza tramos verticales y horizontales con mapeo de textura afín y, por lo tanto, no puede dibujar pisos en rampa o paredes inclinadas.
Técnicas de subdivisión del espacio de pantalla. Arriba a la izquierda: similar a un terremoto, arriba a la derecha: bilineal, abajo a la izquierda: const-z