This adds a gsk prefix to the stuff in the preamble, as we want to avoid it conflicting with things in the main shader. Especially once we start allow some customization of shaders.
23 lines
389 B
GLSL
23 lines
389 B
GLSL
// VERTEX_SHADER:
|
|
uniform vec4 u_color;
|
|
|
|
_OUT_ vec4 final_color;
|
|
|
|
void main() {
|
|
gl_Position = u_projection * u_modelview * vec4(aPosition, 0.0, 1.0);
|
|
|
|
vUv = vec2(aUv.x, aUv.y);
|
|
|
|
final_color = gsk_premultiply(u_color) * u_alpha;
|
|
}
|
|
|
|
// FRAGMENT_SHADER:
|
|
|
|
_IN_ vec4 final_color;
|
|
|
|
void main() {
|
|
vec4 diffuse = GskTexture(u_source, vUv);
|
|
|
|
gskSetOutputColor(final_color * diffuse.a);
|
|
}
|