diff options
Diffstat (limited to 'opengl/libagl/light.cpp')
-rw-r--r-- | opengl/libagl/light.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/opengl/libagl/light.cpp b/opengl/libagl/light.cpp index 87725cb3a3a5..25c41d0c5b9d 100644 --- a/opengl/libagl/light.cpp +++ b/opengl/libagl/light.cpp @@ -117,11 +117,11 @@ int32_t clampF(GLfixed f) { } static GLfixed fog_linear(ogles_context_t* c, GLfixed z) { - return clampF(gglMulx((c->fog.end - z), c->fog.invEndMinusStart)); + return clampF(gglMulx((c->fog.end - ((z<0)?-z:z)), c->fog.invEndMinusStart)); } static GLfixed fog_exp(ogles_context_t* c, GLfixed z) { - const float e = fixedToFloat(gglMulx(c->fog.density, z)); + const float e = fixedToFloat(gglMulx(c->fog.density, ((z<0)?-z:z))); return clampF(gglFloatToFixed(fastexpf(-e))); } @@ -556,11 +556,11 @@ static void fogx(GLenum pname, GLfixed param, ogles_context_t* c) ogles_error(c, GL_INVALID_VALUE); break; case GL_FOG_START: - c->fog.start = gglClampx(param); + c->fog.start = param; c->fog.invEndMinusStart = gglRecip(c->fog.end - c->fog.start); break; case GL_FOG_END: - c->fog.end = gglClampx(param); + c->fog.end = param; c->fog.invEndMinusStart = gglRecip(c->fog.end - c->fog.start); break; case GL_FOG_MODE: |