From: Rudolf Polzer Date: Tue, 21 Sep 2010 20:04:55 +0000 (+0200) Subject: fix a small math error in -samples causing it to only ever consider 2/3 of the length... X-Git-Tag: xonotic-v0.5.0~222 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=07cf00e0a20492f546c5bb173599ee6483198dab;p=xonotic%2Fnetradiant.git fix a small math error in -samples causing it to only ever consider 2/3 of the length of each luxel --- diff --git a/tools/quake3/q3map2/light_ydnar.c b/tools/quake3/q3map2/light_ydnar.c index 0026fecb..81c04df1 100644 --- a/tools/quake3/q3map2/light_ydnar.c +++ b/tools/quake3/q3map2/light_ydnar.c @@ -1834,7 +1834,7 @@ static void SubsampleRawLuxel_r( rawLightmap_t *lm, trace_t *trace, vec3_t sampl { if( cluster[ b ] < 0 ) continue; - SubsampleRawLuxel_r( lm, trace, origin[ b ], x, y, (bias * 0.25f), luxel[ b ] ); + SubsampleRawLuxel_r( lm, trace, origin[ b ], x, y, (bias / 3.0f), luxel[ b ] ); } } @@ -2203,7 +2203,8 @@ void IlluminateRawLightmap( int rawLightmapNum ) //% continue; /* subsample it */ - SubsampleRawLuxel_r( lm, &trace, origin, sx, sy, 0.25f, lightLuxel ); + SubsampleRawLuxel_r( lm, &trace, origin, sx, sy, 1.0f/3.0f, lightLuxel ); + /* will do: first -1/3 .. +1/3, then subsample these corners the same way -> -1/9 .. +1/9 around them, etc. -> 1/3 + 1/9 + 1/27 + ... = 0.5 */ /* debug code to colorize subsampled areas to yellow */ //% luxel = SUPER_LUXEL( lightmapNum, sx, sy );