#version 300 es precision mediump float; in vec4 vertTexCoord; in vec4 vertStencilTexCoord; uniform sampler2D brushTexture; uniform sampler2D stencilTexture; uniform vec4 frontColor; out vec4 fragColor; void main() { vec4 brushSample = texture(brushTexture, vec2(vertTexCoord.x / vertTexCoord.w, vertTexCoord.y / vertTexCoord.w)); vec4 stencilSample = texture(stencilTexture, vec2(vertStencilTexCoord.x / vertStencilTexCoord.w, vertStencilTexCoord.y / vertStencilTexCoord.w)); fragColor = stencilSample * brushSample.a * frontColor; }