Filtrado de texturas

El filtrado de texturas genera un color para cada píxel de la imagen representada en 2D del primitivo cuando se representa un primitivo asignando un primitivo 3D a una pantalla 2D.

Cuando Direct3D representa un primitivo, asigna el primitivo 3D a una pantalla 2D. Si el primitivo tiene una textura, Direct3D debe usar esa textura para generar un color para cada píxel de la imagen representada en 2D del primitivo. Para cada píxel de la imagen en pantalla del primitivo, debe obtener un valor de color de la textura. Este proceso se denomina filtrado de texturas.

Cuando se realiza una operación de filtro de textura, la textura que se usa normalmente también se amplía o minimiza. En otras palabras, se asigna a una imagen primitiva que es mayor o menor que sí misma. La ampliación de una textura puede dar lugar a que muchos píxeles se asignen a un elemento de textura. El resultado puede ser una apariencia fragmentada. La minificación de una textura suele significar que un solo píxel se asigna a muchos elementos de textura. La imagen resultante puede ser borrosa o con alias. Para resolver estos problemas, se deben realizar algunas combinaciones de los colores de los elementos de textura para llegar a un color para el píxel.

Direct3D simplifica el proceso complejo de filtrado de texturas. Proporciona tres tipos de filtrado de texturas: filtrado lineal, filtrado anisotrópico y filtrado mipmap. Si no selecciona ningún filtrado de texturas, Direct3D usa una técnica denominada muestreo de punto más cercano.

Cada tipo de filtrado de texturas tiene ventajas y desventajas. Por ejemplo, el filtrado de texturas lineales puede producir bordes escalonados o una apariencia fragmentada en la imagen final. Sin embargo, es un método computacionalmente bajo de sobrecarga de filtrado de texturas. El filtrado con mapas MIP suele producir los mejores resultados, especialmente cuando se combina con filtrado anisotrópico. Sin embargo, requiere la mayor cantidad de memoria de las técnicas que admite Direct3D.

Tipos de filtrado de texturas

Direct3D admite los siguientes enfoques de filtrado de texturas.

En esta sección

Tema Descripción

Muestreo de punto más cercano

Las aplicaciones no son necesarias para usar el filtrado de texturas. Direct3D se puede establecer para que calcule la dirección de elemento de textura, que a menudo no se evalúa como enteros y copia el color del elemento de textura con la dirección de entero más cercana. Este proceso se denomina muestreo de punto más cercano.

Filtrado de texturas bilineales

El filtrado bilineal calcula el promedio ponderado de los 4 elementos de textura más cercanos al punto de muestreo. Este enfoque de filtrado es más preciso y común que el filtrado de punto más cercano. Este enfoque es eficaz porque se implementa en hardware gráfico moderno.

Filtrado de texturas anisotrópicas

La anisotropía es la distorsión visible en los elementos de textura de un objeto 3D cuya superficie está orientada a un ángulo con respecto al plano de la pantalla. Cuando un píxel de un primitivo anisotrópico se asigna a elementos de textura, su forma se distorsiona.

Filtrado de texturas con mapas MIP

Un mapa mip es una secuencia de texturas, cada una de las cuales es una representación de resolución progresivamente menor de la misma imagen. El alto y el ancho de cada imagen, o nivel, en el mapa mip es una potencia de dos menor que el nivel anterior.

 

Texturas