Skip to content

Commit e238f23

Browse files
committed
tr_image: reword the fog generation code
1 parent 01d7e72 commit e238f23

File tree

1 file changed

+11
-17
lines changed

1 file changed

+11
-17
lines changed

src/engine/renderer/tr_image.cpp

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2404,27 +2404,23 @@ R_CreateFogImage
24042404
static void R_CreateFogImage()
24052405
{
24062406
// Fog image is always created because disabling fog is cheat.
2407+
constexpr size_t FOG_S = 256;
2408+
constexpr size_t FOG_T = 32;
2409+
constexpr size_t channels = 4;
24072410

2408-
int x, y;
2409-
byte *data, *ptr;
2410-
float d;
2411-
float borderColor[ 4 ];
2412-
2413-
constexpr int FOG_S = 256;
2414-
constexpr int FOG_T = 32;
2415-
2416-
ptr = data = (byte*) ri.Hunk_AllocateTempMemory( FOG_S * FOG_T * 4 );
2411+
byte *data, *ptr;
2412+
ptr = data = (byte*) ri.Hunk_AllocateTempMemory( FOG_S * FOG_T * channels );
24172413

24182414
// S is distance, T is depth
2419-
for ( y = 0; y < FOG_T; y++ )
2415+
for ( size_t y = 0; y < FOG_T; y++ )
24202416
{
2421-
for ( x = 0; x < FOG_S; x++ )
2417+
for ( size_t x = 0; x < FOG_S; x++ )
24222418
{
2423-
d = R_FogFactor( ( x + 0.5f ) / FOG_S, ( y + 0.5f ) / FOG_T );
2419+
float d = R_FogFactor( ( x + 0.5f ) / FOG_S, ( y + 0.5f ) / FOG_T );
24242420

24252421
ptr[ 0 ] = ptr[ 1 ] = ptr[ 2 ] = 255;
24262422
ptr[ 3 ] = 255 * d;
2427-
ptr += 4;
2423+
ptr += channels;
24282424
}
24292425
}
24302426

@@ -2439,10 +2435,8 @@ static void R_CreateFogImage()
24392435
tr.fogImage = R_CreateImage( "_fog", ( const byte ** ) &data, FOG_S, FOG_T, 1, imageParams );
24402436
ri.Hunk_FreeTempMemory( data );
24412437

2442-
borderColor[ 0 ] = 1.0;
2443-
borderColor[ 1 ] = 1.0;
2444-
borderColor[ 2 ] = 1.0;
2445-
borderColor[ 3 ] = 1;
2438+
vec4_t borderColor;
2439+
Vector4Set( borderColor, 1.0f, 1.0f, 1.0f, 1.0f );
24462440

24472441
glTexParameterfv( GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, borderColor );
24482442
}

0 commit comments

Comments
 (0)