Sampleado de Textura

De Codepixel

Existen varios problemas a resolver cuando preguntamos a la textura por un valor :

  • Qué valor usar cuando el texel es más grande que el pixel.
  • Qué valor usar cuando el texel es más pequeño que el pixel.



Contenido

[editar] Filtros para Ampliar una imagen

En ese caso, tendremos que interpolar los valores entre los téxeles adjacentes a la coordenada s,t que hemos pedido.

  • Interpolation methods, de Paul Bourke, nos muestra de forma rápida varios métodos de interpolación.
  • Testing Interpolator Quality : compara distintos paquetes de software, incluyendo los valores usados en la interpolación.
  • demos con multitud de ejemplos de interpolaciones, rotados, escalados, etc.

[editar] Nearest Neighbor

Simplemente miramos el valor del texel más cercano. No es realmente una interpolación.

[editar] Interpolación Bilinear

Es una interpolación lineal entre los 4 valores más cercanos.

  • Bilinear en la wikipedia, con matemáticas optimizadas para interpolar entre 4 valores.

[editar] Interpolación Bicública

Es una interpolación en un orden mayor, dondela textura cambia de valor sin discontinuidades. Pero para ello necesitamos 16 valores.

[editar] Interpolación Hermite

[editar] Lanczos

Es un filtro de reconstrucción, donde prima la eliminación de ruido de alta frecuencia.

[editar] Ampliar la imagen, usando la tarjeta (o reduciendo lookups)

Las tarjetas gráficas realizan una interpolación bilineal de forma nativa, asi que es interesante reformular las funciones de filtrado para

[editar] Smooth Step

Se basa en cambiar las coordenadas s,t para simular una mejor interpolación.

[editar] GPU Gems 2

  • Chapter 20 : sobre cómo conseguir una mejor interpolación de las texturas, sin gastar más ancho de banda.

[editar] Filtros para reducir la imágen

[editar] MIP Maps

[editar] Filtros Anisotrópicos

[editar] Interpolación Tricúbica

La forma más costosa, en cuanto a ancho de banda consumido, ya que requiere 64 téxeles para interpolar.

[editar] Filtrado para generar MIP Maps

Herramientas personales