1
0
forked from 0ad/0ad

Removes forbidden and unused USE_SPECULAR from model shader.

This was SVN commit r27770.
This commit is contained in:
Vladislav Belov 2023-07-19 18:04:40 +00:00
parent f2938aaa28
commit ede3605b2f
3 changed files with 11 additions and 22 deletions

View File

@ -78,7 +78,7 @@ void main()
texdiffuse *= mix(objectColor, vec3(1.0, 1.0, 1.0), tex.a);
#endif
#if USE_SPECULAR || USE_SPECULAR_MAP || USE_NORMAL_MAP
#if USE_SPECULAR_MAP || USE_NORMAL_MAP
vec3 normal = normalize(v_normal.xyz);
#endif
@ -90,18 +90,11 @@ void main()
#endif
vec4 specular = vec4(0.0);
#if USE_SPECULAR || USE_SPECULAR_MAP
vec3 specCol;
float specPow;
#if USE_SPECULAR_MAP
vec4 s = SAMPLE_2D(GET_DRAW_TEXTURE_2D(specTex), coord);
specCol = s.rgb;
specular.a = s.a;
specPow = effectSettings.y;
#else
specCol = specularColor;
specPow = specularPower;
#endif
#if USE_SPECULAR_MAP
vec4 s = SAMPLE_2D(GET_DRAW_TEXTURE_2D(specTex), coord);
vec3 specCol = s.rgb;
specular.a = s.a;
float specPow = effectSettings.y;
specular.rgb = sunColor * specCol * pow(max(0.001, dot(normalize(normal), v_half)), specPow);
#endif

View File

@ -30,10 +30,6 @@ BEGIN_DRAW_UNIFORMS
END_DRAW_UNIFORMS
BEGIN_MATERIAL_UNIFORMS
#if USE_SPECULAR
UNIFORM(float, specularPower)
UNIFORM(vec3, specularColor)
#endif
#if USE_NORMAL_MAP || USE_SPECULAR_MAP || USE_PARALLAX || USE_AO
UNIFORM(vec4, effectSettings)
#endif
@ -62,13 +58,13 @@ VERTEX_OUTPUT(1, vec2, v_tex);
#if (USE_INSTANCING || USE_GPU_SKINNING) && USE_AO
VERTEX_OUTPUT(2, vec2, v_tex2);
#endif
#if USE_SPECULAR || USE_NORMAL_MAP || USE_SPECULAR_MAP || USE_PARALLAX
#if USE_NORMAL_MAP || USE_SPECULAR_MAP || USE_PARALLAX
VERTEX_OUTPUT(3, vec4, v_normal);
#if (USE_INSTANCING || USE_GPU_SKINNING) && (USE_NORMAL_MAP || USE_PARALLAX)
VERTEX_OUTPUT(4, vec4, v_tangent);
//VERTEX_OUTPUT(5, vec3, v_bitangent);
#endif
#if USE_SPECULAR || USE_SPECULAR_MAP
#if USE_SPECULAR_MAP
VERTEX_OUTPUT(6, vec3, v_half);
#endif
#if (USE_INSTANCING || USE_GPU_SKINNING) && USE_PARALLAX

View File

@ -96,7 +96,7 @@ void main()
OUTPUT_VERTEX_POSITION(transform * position);
#if USE_SPECULAR || USE_NORMAL_MAP || USE_SPECULAR_MAP || USE_PARALLAX
#if USE_NORMAL_MAP || USE_SPECULAR_MAP || USE_PARALLAX
v_normal.xyz = normal;
#if (USE_INSTANCING || USE_GPU_SKINNING) && (USE_NORMAL_MAP || USE_PARALLAX)
@ -107,9 +107,9 @@ void main()
v_lighting.w = bitangent.z;
#endif
#if USE_SPECULAR || USE_SPECULAR_MAP || USE_PARALLAX
#if USE_SPECULAR_MAP || USE_PARALLAX
vec3 eyeVec = cameraPos.xyz - position.xyz;
#if USE_SPECULAR || USE_SPECULAR_MAP
#if USE_SPECULAR_MAP
vec3 sunVec = -sunDir;
v_half = normalize(sunVec + normalize(eyeVec));
#endif