From 69297eb7da596a62be6415eb9db693cc3cc7b89f Mon Sep 17 00:00:00 2001 From: havoc Date: Sat, 29 Jan 2005 02:21:52 +0000 Subject: [PATCH] reduced offsetmapping from 4 sample to 3 sample to make it work within Radeon 9500-9800/X300 limits git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@4982 d7cf8633-e32d-0410-b094-e92efae38249 --- r_shadow.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/r_shadow.c b/r_shadow.c index 8a1693a6..d12b3c9c 100644 --- a/r_shadow.c +++ b/r_shadow.c @@ -354,11 +354,11 @@ const char *builtinshader_light_frag = "#endif\n" "\n" "#ifdef USEOFFSETMAPPING\n" -" vec2 OffsetVector = normalize(EyeVector).xy * vec2(-1, 1);\n" +" // this is 3 sample because of ATI Radeon 9500-9800/X300 limits\n" +" vec2 OffsetVector = normalize(EyeVector).xy * vec2(-0.333, 0.333);\n" " vec2 TexCoordOffset = TexCoord + OffsetVector * (OffsetMapping_Bias + OffsetMapping_Scale * texture2D(Texture_Normal, TexCoord).w);\n" " TexCoordOffset += OffsetVector * (OffsetMapping_Bias + OffsetMapping_Scale * texture2D(Texture_Normal, TexCoordOffset).w);\n" " TexCoordOffset += OffsetVector * (OffsetMapping_Bias + OffsetMapping_Scale * texture2D(Texture_Normal, TexCoordOffset).w);\n" -" TexCoordOffset += OffsetVector * (OffsetMapping_Bias + OffsetMapping_Scale * texture2D(Texture_Normal, TexCoordOffset).w);\n" "#define TexCoord TexCoordOffset\n" "#endif\n" "\n" @@ -1661,9 +1661,8 @@ void R_Shadow_RenderLighting(int numverts, int numtriangles, const int *elements } if (perm & SHADERPERMUTATION_OFFSETMAPPING) { - // these are * 0.25 because the offsetmapping shader does the process 4 times - qglUniform1fARB(qglGetUniformLocationARB(prog, "OffsetMapping_Scale"), r_shadow_glsl_offsetmapping_scale.value * 0.25);CHECKGLERROR - qglUniform1fARB(qglGetUniformLocationARB(prog, "OffsetMapping_Bias"), r_shadow_glsl_offsetmapping_bias.value * 0.25);CHECKGLERROR + qglUniform1fARB(qglGetUniformLocationARB(prog, "OffsetMapping_Scale"), r_shadow_glsl_offsetmapping_scale.value);CHECKGLERROR + qglUniform1fARB(qglGetUniformLocationARB(prog, "OffsetMapping_Bias"), r_shadow_glsl_offsetmapping_bias.value);CHECKGLERROR } CHECKGLERROR GL_LockArrays(0, numverts); -- 2.39.2