move shaders into .glsl files and add #include feature
This commit is contained in:
29
data/shaders/comp-erase.glsl
Normal file
29
data/shaders/comp-erase.glsl
Normal file
@@ -0,0 +1,29 @@
|
||||
[[vertex]]
|
||||
uniform mat4 mvp;
|
||||
in vec4 pos;
|
||||
in vec2 uvs;
|
||||
out vec2 uv;
|
||||
void main()
|
||||
{
|
||||
uv = uvs;
|
||||
gl_Position = mvp * vec4(pos.xyz, 1.0);
|
||||
};
|
||||
|
||||
[[fragment]]
|
||||
#include "include/blur.glsl"
|
||||
uniform sampler2D tex;
|
||||
uniform sampler2D tex_stroke;
|
||||
uniform sampler2D tex_mask;
|
||||
uniform mediump float alpha;
|
||||
uniform mediump float stroke_alpha;
|
||||
uniform mediump vec2 resolution;
|
||||
uniform bool mask;
|
||||
in mediump vec2 uv;
|
||||
out mediump vec4 frag;
|
||||
void main()
|
||||
{
|
||||
mediump vec4 base = texture(tex, uv);
|
||||
mediump vec4 stroke = texture(tex_stroke, uv);
|
||||
stroke.a = mask ? stroke.a * stroke_alpha * blur(tex_mask, uv).r : stroke.a * stroke_alpha;
|
||||
frag = vec4(base.rgb, clamp((base.a - stroke.a) * alpha, 0.0, 1.0));
|
||||
};
|
||||
Reference in New Issue
Block a user