// INPUT DATA #ifdef TEXTURABLE in vec2 texCoord; #endif #ifdef DIFFUSE_TEXTURE uniform sampler2D diffuseTexture; #else uniform vec3 materialKd; #endif #ifdef ALPHA_MASK uniform sampler2D alphaMask; #else uniform float opacity; #endif // OUTPUT COLOR layout(location = 0)out vec4 outColor; // MAIN PROGRAM void main(void) { #ifdef DIFFUSE_TEXTURE vec3 color = texture(diffuseTexture, texCoord).rgb; #else vec3 color = materialKd; #endif #ifdef ALPHA_MASK float alpha = texture(alphaMask, texCoord).r; #else float alpha = opacity; #endif outColor = vec4(color, alpha); }