Estoy usando libGDX para un juego de Android; Por lo que puedo decir, no tiene una API para difuminar.
Al leer en Wikipedia, parece que el desenfoque se forma al establecer los valores RGB de cada píxel en el promedio de todos los valores adyacentes. Lo que no parece fácilmente posible en libGDX: configuración de datos de píxeles.
Entonces mi pregunta es simple:
¿Es posible simular un desenfoque (decente) usando solo imágenes?
Potencialmente puedo superponer varias imágenes (en número, transparencia, tipo); pero ¿puedo crear un desenfoque convincente como este?
Estoy tentado a decir "no", pero tal vez alguien más haya logrado algo similar. Para mayor claridad, quiero un conjunto de 1+ imágenes genéricas que pueda renderizar sobre CUALQUIER imagen para generar un efecto borroso.
fuente
Respuestas:
Si puede mezclar aditivamente imágenes y multiplicarlas por una constante mientras lo hace, puede hacer un desenfoque. En lugar de promediar los píxeles en un vecindario, promediaría varias copias de la imagen desplazadas por una pequeña cantidad de píxeles entre sí. O, en términos más generales, puede hacer un desenfoque gaussiano o cualquier tipo de desenfoque, controlando los pesos, es decir, multiplicando cada copia desplazada de la imagen por una constante a medida que se agrega al resto.
Algorítmicamente, se vería así:
Usaría los mismos desplazamientos y pesos que en la forma estándar de hacer un desenfoque. Hay muchos artículos en la Web sobre cómo generar los pesos para un desenfoque gaussiano, por ejemplo.
fuente
El desenfoque puede ser una operación costosa, quizás un enfoque diferente podría funcionar, por ejemplo:
fuente