From 2c7c1f547de22e5afa09bf757633428e7073b285 Mon Sep 17 00:00:00 2001 From: raven02 Date: Thu, 6 Mar 2014 22:07:08 +0800 Subject: [PATCH 1/2] Shade mapping fix --- GPU/GLES/VertexShaderGenerator.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/GLES/VertexShaderGenerator.cpp b/GPU/GLES/VertexShaderGenerator.cpp index 35085e8c40..db444ebeba 100644 --- a/GPU/GLES/VertexShaderGenerator.cpp +++ b/GPU/GLES/VertexShaderGenerator.cpp @@ -646,7 +646,7 @@ void GenerateVertexShader(int prim, u32 vertType, char *buffer, bool useHWTransf break; case GE_TEXMAP_ENVIRONMENT_MAP: // Shade mapping - use dots from light sources. - WRITE(p, " v_texcoord = u_uvscaleoffset.xy * vec2(1.0 + dot(normalize(u_lightpos%i), worldnormal), 1.0 - dot(normalize(u_lightpos%i), worldnormal)) * 0.5;\n", gstate.getUVLS0(), gstate.getUVLS1()); + WRITE(p, " v_texcoord = u_uvscaleoffset.xy * vec2(1.0 + dot(normalize(u_lightpos%i), worldnormal), 1.0 + dot(normalize(u_lightpos%i), worldnormal)) * 0.5;\n", gstate.getUVLS0(), gstate.getUVLS1()); break; default: From 1b831ce02269db785cb8e0cc3106cdc89bf46810 Mon Sep 17 00:00:00 2001 From: raven02 Date: Fri, 7 Mar 2014 21:41:40 +0800 Subject: [PATCH 2/2] SW T&L --- GPU/GLES/SoftwareTransform.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/GLES/SoftwareTransform.cpp b/GPU/GLES/SoftwareTransform.cpp index 04a725adf2..9cd6fd63e6 100644 --- a/GPU/GLES/SoftwareTransform.cpp +++ b/GPU/GLES/SoftwareTransform.cpp @@ -502,7 +502,7 @@ void TransformDrawEngine::SoftwareTransformAndDraw( Vec3f lightpos1 = Vec3f(gstate_c.lightpos[gstate.getUVLS1()]).Normalized(); uv[0] = (1.0f + Dot(lightpos0, normal))/2.0f; - uv[1] = (1.0f - Dot(lightpos1, normal))/2.0f; + uv[1] = (1.0f + Dot(lightpos1, normal))/2.0f; uv[2] = 1.0f; } break;