summaryrefslogtreecommitdiff
path: root/assets/text_shader.glsl
blob: 3b6ed18d5efa3b830fcca0f60cbb1be6d0ebd576 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
@header #include "cglm/cglm.h"

@vs vs_text
in vec2 in_position;
in vec2 in_uv;

layout(binding = 0) uniform vs_text_params {
    mat4 mvp;
    vec4 color;
}

out vec2 out_uv;
out vec4 out_color;

void main() {
    gl_Position = mvp * vec4(in_position, 0.0, 1.0);
    out_uv = in_uv;
    out_color = color;
}

@end

@fs fs_text
layout(binding = 0) uniform texture2D u_texture;
layout(binding = 1) uniform sampler u_sampler;

in vec2 in_uv;
in vec4 in_color;

out vec4 out_color;

void main() {
    float alpha = texture(sampler2D(u_texture, u_sampler), in_uv).r;
    out_color = vec4(in_color.rgb, in_color.a * alpha);
}

@end
@program text vs_text fs_text