From 95fc19f9a9bf797aba3db41680b1501759eecc68 Mon Sep 17 00:00:00 2001 From: MirceaKitsune Date: Tue, 1 Mar 2011 19:55:33 +0200 Subject: [PATCH 1/1] Fix uservec*_enable cvars getting set dynamically, causing hiccups. They will now be turned on or off if the features that use them are on or off. --- data/qcsrc/client/View.qc | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/data/qcsrc/client/View.qc b/data/qcsrc/client/View.qc index b96fb7e0..ef62afcb 100644 --- a/data/qcsrc/client/View.qc +++ b/data/qcsrc/client/View.qc @@ -695,6 +695,14 @@ void CSQC_UpdateView(float w, float h) if(cvar("hud_postprocessing")) { + // all of this should be done in the engine eventually + + // enable or disable rendering types if they are used or not + if(cvar("r_glsl_postprocess_uservec1_enable") != (cvar("hud_postprocessing_maxbluralpha") != 0)) + cvar_set("r_glsl_postprocess_uservec1_enable", ftos(cvar("hud_postprocessing_maxbluralpha") != 0)); + if(cvar("r_glsl_postprocess_uservec2_enable") != (cvar("hud_powerup") != 0)) + cvar_set("r_glsl_postprocess_uservec2_enable", ftos(cvar("hud_powerup") != 0)); + // lets apply the postprocess effects from the previous two functions if needed if(damage_blurpostprocess_x || content_blurpostprocess_x) { @@ -703,15 +711,13 @@ void CSQC_UpdateView(float w, float h) if(blurradius != old_blurradius || bluralpha != old_bluralpha) // reduce cvar_set spam as much as possible { cvar_set("r_glsl_postprocess_uservec1", strcat(ftos(blurradius), " ", ftos(bluralpha), " 0 0")); - cvar_set("r_glsl_postprocess_uservec1_enable", "1"); old_blurradius = blurradius; old_bluralpha = bluralpha; } } - else if(cvar("r_glsl_postprocess_uservec1_enable")) // reduce cvar_set spam as much as possible + else if(cvar_string("r_glsl_postprocess_uservec1") != "0 0 0 0") // reduce cvar_set spam as much as possible { cvar_set("r_glsl_postprocess_uservec1", "0 0 0 0"); - cvar_set("r_glsl_postprocess_uservec1_enable", "0"); old_blurradius = 0; old_bluralpha = 0; } @@ -729,14 +735,12 @@ void CSQC_UpdateView(float w, float h) if(sharpen_intensity != old_sharpen_intensity) // reduce cvar_set spam as much as possible { cvar_set("r_glsl_postprocess_uservec2", strcat("0 ", ftos(-sharpen_intensity * cvar("hud_powerup")), " 0 0")); - cvar_set("r_glsl_postprocess_uservec2_enable", "1"); old_sharpen_intensity = sharpen_intensity; } } - else if(cvar("r_glsl_postprocess_uservec2_enable")) // reduce cvar_set spam as much as possible + else if(cvar_string("r_glsl_postprocess_uservec2") != "0 0 0 0") // reduce cvar_set spam as much as possible { cvar_set("r_glsl_postprocess_uservec2", "0 0 0 0"); - cvar_set("r_glsl_postprocess_uservec2_enable", "0"); old_sharpen_intensity = 0; } } -- 2.39.2