En el 3er tutorial tenemos un efecto de transparencia con dos imágenes. La técnica es:
Dibujo la imagen A con un alpha
Dibujo la imagen B con 1-Alpha
Precioso. Me daba 430 fps, pero se me ocurrió que podía evitar el redibujado utilizando shaders:
Stage 0:Imagen A
Stage 1:Imagen B
color=lerp(A,B,Alpha)
Y el resultado es 425 fps!! ¡Es más lento que dibujando dos veces con transparencia!
Eso significa, desde mi punto de vista, que lo más lento es ir a buscar el texel, o bien que no es muy óptimo leer texels de texturas diferentes en el mismo shader.
Os pongo el ejemplo con el código y el shader.
Ese enlace¿Qué opinais?
Por cierto, FUNCIONA EN PIXEL SHADERS 1.4. He modificado el motor para que funcione con menores shaders si el programador así lo decide.