From: vortex Date: Sat, 19 Mar 2011 22:13:11 +0000 (+0000) Subject: add "r_fog_clear" cvar which allows to disable framebuffer clearing to fog color... X-Git-Tag: xonotic-v0.5.0~397 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=60bc393927de1a1a4bda5c9f787b3d44c0f58c7d;p=xonotic%2Fdarkplaces.git add "r_fog_clear" cvar which allows to disable framebuffer clearing to fog color (helps to fix bad borders on water reflections if fog is used), still, some old maps may want r_fog_clear = 1 git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@10942 d7cf8633-e32d-0410-b094-e92efae38249 ::stable-branch::merge=3e7f49875fab5f42941120f4bec55ec3e22a3bfa --- diff --git a/cl_screen.c b/cl_screen.c index 2a9f4281..2abb2903 100644 --- a/cl_screen.c +++ b/cl_screen.c @@ -86,6 +86,7 @@ cvar_t vid_touchscreen_overlayalpha = {0, "vid_touchscreen_overlayalpha", "0.25" extern cvar_t v_glslgamma; extern cvar_t sbar_info_pos; +extern cvar_t r_fog_clear; #define WANT_SCREENSHOT_HWGAMMA (scr_screenshot_hwgamma.integer && vid_usinghwgamma) int jpeg_supported = false; @@ -1612,7 +1613,8 @@ void R_ClearScreen(qboolean fogcolor) if (fogcolor) { R_UpdateFogColor(); - VectorCopy(r_refdef.fogcolor, clearcolor); + if (r_fog_clear.integer) + VectorCopy(r_refdef.fogcolor, clearcolor); } // clear depth is 1.0 // LordHavoc: we use a stencil centered around 128 instead of 0, diff --git a/gl_rmain.c b/gl_rmain.c index 19ad74b4..c6d4f331 100644 --- a/gl_rmain.c +++ b/gl_rmain.c @@ -115,6 +115,7 @@ cvar_t r_polygonoffset_submodel_offset = {0, "r_polygonoffset_submodel_offset", cvar_t r_polygonoffset_decals_factor = {0, "r_polygonoffset_decals_factor", "0", "biases depth values of decals to prevent z-fighting artifacts"}; cvar_t r_polygonoffset_decals_offset = {0, "r_polygonoffset_decals_offset", "-14", "biases depth values of decals to prevent z-fighting artifacts"}; cvar_t r_fog_exp2 = {0, "r_fog_exp2", "0", "uses GL_EXP2 fog (as in Nehahra) rather than realistic GL_EXP fog"}; +cvar_t r_fog_clear = {0, "r_fog_clear", "1", "clears renderbuffer with fog color before render starts"}; cvar_t r_drawfog = {CVAR_SAVE, "r_drawfog", "1", "allows one to disable fog rendering"}; cvar_t r_transparentdepthmasking = {CVAR_SAVE, "r_transparentdepthmasking", "0", "enables depth writes on transparent meshes whose materially is normally opaque, this prevents seeing the inside of a transparent mesh"}; @@ -4069,6 +4070,7 @@ void GL_Main_Init(void) Cvar_RegisterVariable(&r_polygonoffset_decals_factor); Cvar_RegisterVariable(&r_polygonoffset_decals_offset); Cvar_RegisterVariable(&r_fog_exp2); + Cvar_RegisterVariable(&r_fog_clear); Cvar_RegisterVariable(&r_drawfog); Cvar_RegisterVariable(&r_transparentdepthmasking); Cvar_RegisterVariable(&r_texture_dds_load);