@phaserjs/phaser
Version:
2 lines • 1.04 kB
TypeScript
export declare const MULTI_QUAD_FRAG = "#define SHADER_NAME MULTI_QUAD_FRAG\n#define numTextures %count%\n\nprecision highp float;\n\nvarying vec2 vTextureCoord;\nvarying float vTextureId;\nvarying vec4 vTintColor;\n\nuniform sampler2D uTexture[%count%];\nuniform mat4 uColorMatrix;\nuniform vec4 uColorOffset;\n\nvec4 getSampler (int index, vec2 uv)\n{\n for (int i = 0; i < numTextures; ++i)\n {\n vec4 color = texture2D(uTexture[i], uv);\n\n if (i == index)\n {\n return color * vec4(vTintColor.rgb * vTintColor.a, vTintColor.a);\n }\n }\n\n // Return black\n return vec4(0);\n}\n\nvoid main (void)\n{\n vec4 color = getSampler(int(vTextureId), vTextureCoord);\n\n // Un pre-mult alpha\n if (color.a > 0.0)\n {\n color.rgb /= color.a;\n }\n\n vec4 result = color * uColorMatrix + (uColorOffset / 255.0);\n\n // Pre-mult alpha\n result.rgb *= result.a;\n\n gl_FragColor = vec4(result.rgb, result.a);\n}";
//# sourceMappingURL=MULTI_QUAD_FRAG.d.ts.map