From: Spike29 Date: Sat, 20 May 2023 09:29:49 +0000 (+0200) Subject: Modify a loop iterator to work around an issue with Stormkeep lightmaps generation X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=4699a6b2000292588c402541841794b78bed1aad;p=xonotic%2Fnetradiant.git Modify a loop iterator to work around an issue with Stormkeep lightmaps generation --- diff --git a/tools/quake3/q3map2/light_bounce.c b/tools/quake3/q3map2/light_bounce.c index 8cd6dead..d34c6ed2 100644 --- a/tools/quake3/q3map2/light_bounce.c +++ b/tools/quake3/q3map2/light_bounce.c @@ -384,8 +384,15 @@ static void RadSample( int lightmapNum, bspDrawSurface_t *ds, rawLightmap_t *lm, textureColor[ 3 ] = 255; } avgcolor = ( textureColor[ 0 ] + textureColor[ 1 ] + textureColor[ 2 ] ) / 3; - for ( l = 0; l < 3; l++ ){ + for ( i = 0; i < 3; i++ ){ + color[ i ] = ( ( textureColor[ i ] * bounceColorRatio + ( avgcolor * ( 1 - bounceColorRatio ) ) ) / 255 ) * ( radLuxel[ i ] / 255 ); + /* + Workaround for https://gitlab.com/xonotic/netradiant/-/issues/182 + This loop normally uses the l iterator instead of i: + for ( l = 0; l < 3; l++ ){ color[ l ] = ( ( textureColor[ l ] * bounceColorRatio + ( avgcolor * ( 1 - bounceColorRatio ) ) ) / 255 ) * ( radLuxel[ l ] / 255 ); + } + */ //Sys_Printf( "%i %i %i %i %i \n", (int) textureColor[ 0 ], (int) textureColor[ 1 ], (int) textureColor[ 2 ], (int) avgcolor, (int) color[ i ] ); } AddPointToBounds( color, mins, maxs );