uniform vec4 m_Color; #ifdef HAS_COLORMAP uniform sampler2D m_ColorMap; #endif in vec2 texCoord; out vec4 outFragColor; void main() { vec4 color = m_Color; #ifdef HAS_COLORMAP color *= texture(m_ColorMap, texCoord); #endif // Alpha-Discard: transparente Pixel sofort verwerfen, Z-Buffer bleibt sauber if (color.a < 0.5) discard; outFragColor = color; }