@phaserjs/phaser
Version:
30 lines (21 loc) • 592 B
JavaScript
export const SINGLE_QUAD_FRAG = `
precision highp float;
varying vec2 vTextureCoord;
varying float vTextureId;
varying vec4 vTintColor;
uniform sampler2D uTexture;
uniform mat4 uColorMatrix;
uniform vec4 uColorOffset;
void main (void)
{
vec4 color = texture2D(uTexture, vTextureCoord);
// Un pre-mult alpha
if (color.a > 0.0)
{
color.rgb /= color.a;
}
vec4 result = color * uColorMatrix + (uColorOffset / 255.0);
// Pre-mult alpha
result.rgb *= result.a;
gl_FragColor = vec4(result.rgb, result.a);
}`;