1 uniform float m_ExposurePow; 2 uniform float m_ExposureCutoff; 3 uniform sampler2D m_Texture; 4 5 varying vec2 texCoord; 6 7 #ifdef HAS_GLOWMAP 8 uniform sampler2D m_GlowMap; 9 #endif 10 11 void main(){ 12 vec4 color = vec4(0.0); 13 #ifdef DO_EXTRACT 14 color = texture2D( m_Texture, texCoord ); 15 if ( (color.r+color.g+color.b)/3.0 < m_ExposureCutoff ) { 16 color = vec4(0.0); 17 }else{ 18 color = pow(color,vec4(m_ExposurePow)); 19 } 20 #endif 21 22 #ifdef HAS_GLOWMAP 23 vec4 glowColor = texture2D(m_GlowMap, texCoord); 24 glowColor = pow(glowColor, vec4(m_ExposurePow)); 25 color += glowColor; 26 #endif 27 28 gl_FragColor = color; 29 } 30