diff --git a/GPU/GLES/TransformPipeline.cpp b/GPU/GLES/TransformPipeline.cpp index 6688b70484..d6684f62fe 100644 --- a/GPU/GLES/TransformPipeline.cpp +++ b/GPU/GLES/TransformPipeline.cpp @@ -350,7 +350,7 @@ void Lighter::Light(float colorOut0[4], float colorOut1[4], const float colorIn[ if (gstate.lightEnable[l] & 1) { Color4 lightAmbient(gstate_c.lightColor[0][l], 0.0f); - lightSum0 += (lightAmbient + diff) * lightScale; + lightSum0 += (lightAmbient * *ambient + diff) * lightScale; } } diff --git a/GPU/GLES/VertexShaderGenerator.cpp b/GPU/GLES/VertexShaderGenerator.cpp index a925e0570c..dd3f8a95ae 100644 --- a/GPU/GLES/VertexShaderGenerator.cpp +++ b/GPU/GLES/VertexShaderGenerator.cpp @@ -476,7 +476,7 @@ void GenerateVertexShader(int prim, char *buffer) { WRITE(p, " if (dot%i > 0.0)\n", i); WRITE(p, " lightSum1 += u_lightspecular%i * %s * (pow(dot%i, u_matspecular.a) %s);\n", i, specularStr, i, timesLightScale); } - WRITE(p, " lightSum0.rgb += (u_lightambient%i + diffuse)%s;\n", i, timesLightScale); + WRITE(p, " lightSum0.rgb += (u_lightambient%i * %s.rgb + diffuse)%s;\n", i, ambientStr, timesLightScale); } if (gstate.isLightingEnabled()) {