From 8e6b10ebe12fe53ae543df3af7a730218e40662d Mon Sep 17 00:00:00 2001 From: Zack Middleton Date: Sun, 16 Nov 2014 12:47:49 -0600 Subject: Don't set fog image border color GL1's R_CreateImage sets GL texture to 0 before it ends, so border color is not applied to the fog image. GL_CLAMP is not used for fog image (in either renderer), so it would presumably not be used even if applied to the fog image. --- src/renderergl1/tr_image.c | 12 ------------ src/renderergl2/tr_image.c | 11 ----------- 2 files changed, 23 deletions(-) diff --git a/src/renderergl1/tr_image.c b/src/renderergl1/tr_image.c index d043b80d..6f58a5b2 100644 --- a/src/renderergl1/tr_image.c +++ b/src/renderergl1/tr_image.c @@ -900,7 +900,6 @@ image_t *R_CreateImage( const char *name, byte *pic, int width, int height, qglTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, glWrapClampMode ); qglTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, glWrapClampMode ); - // FIXME: this stops fog from setting border color? glState.currenttextures[glState.currenttmu] = 0; qglBindTexture( GL_TEXTURE_2D, 0 ); @@ -1169,7 +1168,6 @@ static void R_CreateFogImage( void ) { int x,y; byte *data; float d; - float borderColor[4]; data = ri.Hunk_AllocateTempMemory( FOG_S * FOG_T * 4 ); @@ -1184,18 +1182,8 @@ static void R_CreateFogImage( void ) { data[(y*FOG_S+x)*4+3] = 255*d; } } - // standard openGL clamping doesn't really do what we want -- it includes - // the border color at the edges. OpenGL 1.2 has clamp-to-edge, which does - // what we want. tr.fogImage = R_CreateImage("*fog", (byte *)data, FOG_S, FOG_T, IMGTYPE_COLORALPHA, IMGFLAG_CLAMPTOEDGE, 0 ); ri.Hunk_FreeTempMemory( data ); - - borderColor[0] = 1.0; - borderColor[1] = 1.0; - borderColor[2] = 1.0; - borderColor[3] = 1; - - qglTexParameterfv( GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, borderColor ); } /* diff --git a/src/renderergl2/tr_image.c b/src/renderergl2/tr_image.c index 1f1cb349..eaea1c66 100644 --- a/src/renderergl2/tr_image.c +++ b/src/renderergl2/tr_image.c @@ -2642,7 +2642,6 @@ static void R_CreateFogImage( void ) { int x,y; byte *data; float d; - float borderColor[4]; data = ri.Hunk_AllocateTempMemory( FOG_S * FOG_T * 4 ); @@ -2657,18 +2656,8 @@ static void R_CreateFogImage( void ) { data[(y*FOG_S+x)*4+3] = 255*d; } } - // standard openGL clamping doesn't really do what we want -- it includes - // the border color at the edges. OpenGL 1.2 has clamp-to-edge, which does - // what we want. tr.fogImage = R_CreateImage("*fog", (byte *)data, FOG_S, FOG_T, IMGTYPE_COLORALPHA, IMGFLAG_CLAMPTOEDGE, 0 ); ri.Hunk_FreeTempMemory( data ); - - borderColor[0] = 1.0; - borderColor[1] = 1.0; - borderColor[2] = 1.0; - borderColor[3] = 1; - - qglTexParameterfv( GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, borderColor ); } /* -- cgit