2012-12-04 03:05:34 +00:00
|
|
|
uniform sampler2D u_DiffuseMap;
|
|
|
|
|
|
|
|
#if defined(USE_LIGHTMAP)
|
|
|
|
uniform sampler2D u_LightMap;
|
|
|
|
|
|
|
|
uniform int u_Texture1Env;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
varying vec2 var_DiffuseTex;
|
|
|
|
|
|
|
|
#if defined(USE_LIGHTMAP)
|
|
|
|
varying vec2 var_LightTex;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
varying vec4 var_Color;
|
|
|
|
|
|
|
|
|
|
|
|
void main()
|
|
|
|
{
|
|
|
|
vec4 color = texture2D(u_DiffuseMap, var_DiffuseTex);
|
|
|
|
#if defined(USE_LIGHTMAP)
|
|
|
|
vec4 color2 = texture2D(u_LightMap, var_LightTex);
|
2013-09-16 12:57:14 +00:00
|
|
|
#if defined(RGBM_LIGHTMAP)
|
|
|
|
color2.rgb *= 32.0 * color2.a;
|
2012-12-04 03:05:34 +00:00
|
|
|
color2.a = 1.0;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
if (u_Texture1Env == TEXENV_MODULATE)
|
|
|
|
{
|
|
|
|
color *= color2;
|
|
|
|
}
|
|
|
|
else if (u_Texture1Env == TEXENV_ADD)
|
|
|
|
{
|
|
|
|
color += color2;
|
|
|
|
}
|
|
|
|
else if (u_Texture1Env == TEXENV_REPLACE)
|
|
|
|
{
|
|
|
|
color = color2;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
gl_FragColor = color * var_Color;
|
|
|
|
}
|