Acabo de mirar los artículos de Wikipedia sobre la interpolación bilineal. Un filtro de tienda es una especie de interpolación bilineal. Una interpolación bilineal se interpola en 2 dimensiones. Primero se interpola linealmente en una dimensión y luego en la otra.
Cuando miras esta imagen, primero lo hace en la columna y luego en la fila, por ejemplo.
La razón por la que esto podría ser mejor que promediar colores, es que cuando uno de los puntos se acerca más al centro que otro, contribuye más al color final. Al promediar los colores, todos los puntos contribuyen por igual, incluso cuando un punto está más cerca del centro que otro.
Si los 4 puntos están en posiciones fijas a una distancia igual del centro, entonces obtienes exactamente un 25% de contribución en todos los puntos, eso es lo mismo que promediar.
Esto significa que cuando implementa el anti-alias simplemente renderizando a una resolución 4 veces mayor, y luego bajando la muestra. La salida entre las 2 formas debería ser la misma, por lo que yo entiendo.
Entonces, ¿qué filtro debes usar? Bueno, depende de lo que quieras y de tu situación. Si elige ubicaciones aleatorias de subpíxeles para sus muestras, entonces podría ser mejor usar una interpolación bilineal. Si todos los puntos son fijos y solo renderiza con una resolución más alta, el promedio podría ser útil. Al final, esto es solo algunas cosas de subpíxeles que normalmente no se notan o apenas se notan, por lo que si hay algún tipo de AA, entonces es lo suficientemente bueno. Pero esa es solo mi opinión y probablemente la del espectador promedio de animación 3D o algo así.
Una interpolación bicúbica le da un aspecto más suave. Bicúbico:
Bilineal:
¿Cual es mejor? Bueno, depende de lo que te guste, y no creo que haya una gran diferencia.
Mis fuentes:
https://en.wikipedia.org/wiki/Reconstruction_filter#Image_processing
https://en.wikipedia.org/wiki/Bilinear_interpolation
https://en.wikipedia.org/wiki/Bicubic_interpolation
(Las imágenes son de Wikipedia y son de dominio público)
Espero que esto ayude, solo quiero decir que no soy un profesional en esto, solo soy alguien a quien simplemente le gustan las cosas de gráficos por computadora. Podría ser que cometí algunos errores. Si es así, ¡solo dilo y lo cambio!