Estoy creando un ejemplo simple de tres en raya con LibGDX. Tengo imágenes simples: cruz, círculo y tablero, todas png
creadas con GIMP con un fondo transparente.
¿Cómo puedo renderizarlos como Texture
con transparencia?
He intentado con la función de activación GL10, pero parece que no funciona.
java
libgdx
lwjgl
transparency
Vokail
fuente
fuente
Respuestas:
SpriteBatch # enableBlending
antes de renderizar:
fuente
Cree Sprite y asígnele Textura, luego use Sprite setColor para ajustar su alfa, así,
y en el bucle render () usa SpriteBatch
fuente
Si pones
Al comienzo de su ciclo de render () se debe actualizar la pantalla con el color negro. Entonces, si alguna imagen tiene transparencia, será notable.
para que tu bucle render () se vea así
fuente
Traté de renderizar un .png con transparencia también. Con la configuración básica (mezcla no activada) no se procesó correctamente.
Nunca activé la mezcla, pero agregué esto:
Mi problema fue que el alfa nunca se borró. Es decir, si renderizo con 0.1 alfa, tomaría 10 cuadros hasta que el alfa se "apilara" de nuevo a 1. Agregar la llamada anterior borró el alfa, al igual que borraría el color.
Sé que esta es una vieja pregunta, por lo que las soluciones eran diferentes. enableBlending aún debería funcionar, pero no estoy seguro de si esto evita el "apilamiento" de alfa. Borrar los bits alfa es probablemente la forma más fácil de evitar el aspecto sólido.
En cuanto a la representación real, eso es lo mismo de siempre.
fuente