Mapeado de texturas


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

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

A mapa de textura [5] [6] es una imagen aplicada (mapeada) a la superficie de una forma opolígono. [7] Puede ser unaimagen de mapa de bitso unatextura de procedimiento. Pueden almacenarse enformatos de archivo de imagen comunes, referenciarse medianteformatos de modelos 3Dodefiniciones de materiales, y ensamblarse enpaquetes de recursos.

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

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 mezcla alfa ( RGBA ), especialmente para vallas publicitarias y texturas superpuestas 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 .

Pueden combinarse múltiples 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 multitextura :
1: Esfera Sin textura, 2: mapas opacidad y textura: Textura y mapas de relieve, 3: Textura mapa solo, 4
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 un mapeo de texturas afines y, por lo tanto, no puede dibujar pisos en rampa ni paredes inclinadas.
Técnicas de subdivisión del espacio de la pantalla. Arriba a la izquierda: similar a un terremoto, arriba a la derecha: bilineal, abajo a la izquierda: const-z