From f3ebf96e18eadc0a37f42b1679bcde3f568c3a9d Mon Sep 17 00:00:00 2001 From: divverent Date: Wed, 25 Feb 2009 14:13:02 +0000 Subject: [PATCH] fix v_color_enable with v_glslgamma git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8760 d7cf8633-e32d-0410-b094-e92efae38249 --- gl_rmain.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gl_rmain.c b/gl_rmain.c index ab597a4a..eada61fd 100644 --- a/gl_rmain.c +++ b/gl_rmain.c @@ -3769,7 +3769,7 @@ void R_UpdateVariables(void) // build GLSL gamma texture #define RAMPWIDTH 256 unsigned short ramp[RAMPWIDTH * 3]; - unsigned char ramprgb[RAMPWIDTH][4]; + unsigned char rampbgr[RAMPWIDTH][4]; int i; r_texture_gammaramps_serial = vid_gammatables_serial; @@ -3777,18 +3777,18 @@ void R_UpdateVariables(void) VID_BuildGammaTables(&ramp[0], RAMPWIDTH); for(i = 0; i < RAMPWIDTH; ++i) { - ramprgb[i][0] = ramp[i] >> 8; - ramprgb[i][1] = ramp[i + RAMPWIDTH] >> 8; - ramprgb[i][2] = ramp[i + 2 * RAMPWIDTH] >> 8; - ramprgb[i][3] = 0; + rampbgr[i][0] = (unsigned char) (ramp[i + 2 * RAMPWIDTH] * 255.0 / 65535.0 + 0.5); + rampbgr[i][1] = (unsigned char) (ramp[i + RAMPWIDTH] * 255.0 / 65535.0 + 0.5); + rampbgr[i][2] = (unsigned char) (ramp[i] * 255.0 / 65535.0 + 0.5); + rampbgr[i][3] = 0; } if (r_texture_gammaramps) { - R_UpdateTexture(r_texture_gammaramps, &ramprgb[0][0], 0, 0, RAMPWIDTH, 1); + R_UpdateTexture(r_texture_gammaramps, &rampbgr[0][0], 0, 0, RAMPWIDTH, 1); } else { - r_texture_gammaramps = R_LoadTexture2D(r_main_texturepool, "gammaramps", RAMPWIDTH, 1, &ramprgb[0][0], TEXTYPE_BGRA, TEXF_PRECACHE | TEXF_FORCELINEAR | TEXF_CLAMP | TEXF_PERSISTENT, NULL); + r_texture_gammaramps = R_LoadTexture2D(r_main_texturepool, "gammaramps", RAMPWIDTH, 1, &rampbgr[0][0], TEXTYPE_BGRA, TEXF_PRECACHE | TEXF_FORCELINEAR | TEXF_CLAMP | TEXF_PERSISTENT, NULL); } } } -- 2.39.2