]> git.tdb.fi Git - libs/gl.git/blobdiff - shaderlib/unlit.glsl
Add support for alpha to coverage
[libs/gl.git] / shaderlib / unlit.glsl
index 29cfd3f2cf0257874b40c0a0901e5ca9157bb9da..a7d75c3248a59150e9cd70fa749ce05df975eb16 100644 (file)
@@ -9,7 +9,7 @@ struct UnlitMaterialParameters
 layout(set=1) uniform UnlitMaterial
 {
        UnlitMaterialParameters unlit_material;
-       float alpha_cutoff;
+       AlphaCutoffParams alpha_cutoff;
 };
 
 layout(set=1) uniform sampler2D color_tex;
@@ -17,7 +17,6 @@ layout(set=1) uniform sampler2D color_tex;
 layout(constant_id=auto) const bool use_texture = false;
 layout(constant_id=auto) const bool use_vertex_color = false;
 layout(constant_id=auto) const bool use_fog = false;
-layout(constant_id=auto) const bool use_alpha_cutoff = false;
 
 #pragma MSP stage(fragment)
 virtual vec4 get_color()
@@ -33,8 +32,7 @@ virtual vec4 get_color()
 void main()
 {
        vec4 color = get_color();
-       if(use_alpha_cutoff && color.a<alpha_cutoff)
-               discard;
+       color.a = apply_alpha_cutoff(color.a, alpha_cutoff);
 
        if(use_fog)
                color.rgb = apply_fog(color.rgb);