8 uniform sampler2D alpha_map;
10 layout(constant_id=auto) const bool use_alpha_cutoff = false;
12 #pragma MSP stage(vertex)
13 virtual vec4 get_vertex_position()
18 virtual mat4 get_vertex_transform()
20 return world_obj_matrix;
23 virtual void clipping(vec3 eye_vertex)
29 vec4 eye_vertex = eye_world_matrix*get_vertex_transform()*get_vertex_position();
30 clipping(eye_vertex.xyz);
31 gl_Position = clip_eye_matrix*eye_vertex;
35 #pragma MSP stage(fragment)
36 layout(location=0) out vec4 frag_color;
42 float alpha = texture(alpha_map, texcoord.xy).a;
43 if(alpha<alpha_cutoff)
45 frag_color = vec4(1.0);