seta hud_postprocessing 1 "enables the ability for effects such as hud_damage_blur and hud_contents to apply a postprocessing method upon the screen - enabling this disables manual editing of the postprocess cvars"\r
seta hud_postprocessing_maxbluralpha 0.5 "maximum alpha which the blur postprocess can be"\r
seta hud_postprocessing_maxblurradius 10 "maximum radius which the blur postprocess can be"\r
+seta hud_postprocessing_maxsharpenalpha 0.75 "maximum alpha which the sharpen postprocess can be"\r
\r
seta hud_contents 1 "an improved version of gl_polyblend for liquids such as water/lava/slime, draw a filler when inside the liquid"\r
seta hud_contents_factor 1 "factor at which to multiply the current faded value."\r
cvar_set("r_glsl_postprocess_uservec1", "0 0 0 0");\r
cvar_set("r_glsl_postprocess_uservec1_enable", "0");\r
}\r
+\r
+ if(cvar("hud_postprocessing_maxsharpenalpha"))\r
+ {\r
+ float sharpen_intensity;\r
+ if (getstatf(STAT_STRENGTH_FINISHED) - time > 0)\r
+ sharpen_intensity += (getstatf(STAT_STRENGTH_FINISHED) - time);\r
+ if (getstatf(STAT_INVINCIBLE_FINISHED) - time > 0)\r
+ sharpen_intensity += (getstatf(STAT_INVINCIBLE_FINISHED) - time);\r
+ sharpen_intensity = bound(0, sharpen_intensity, 5); // powerup warning time is 5 seconds, so match it\r
+\r
+ if(sharpen_intensity > 0)\r
+ {\r
+ cvar_set("r_glsl_postprocess_uservec2", strcat("1 ", ftos(-sharpen_intensity * cvar("hud_postprocessing_maxsharpenalpha")), " 0 0"));\r
+ cvar_set("r_glsl_postprocess_uservec2_enable", "1");\r
+ }\r
+ else\r
+ {\r
+ cvar_set("r_glsl_postprocess_uservec2", "0 0 0 0");\r
+ cvar_set("r_glsl_postprocess_uservec2_enable", "0");\r
+ }\r
+ }\r
}\r
\r
if not(cvar("hud_damage") && cvar("hud_postprocessing"))\r
cvar_set("r_glsl_postprocess_uservec1", "0 0 0 0");\r
cvar_set("r_glsl_postprocess_uservec1_enable", "0");\r
}\r
+ if not(cvar("hud_postprocessing_maxsharpenalpha") && cvar("hud_postprocessing"))\r
+ {\r
+ // don't allow sharpen to get stuck on if we disable the cvar while powered up\r
+ cvar_set("r_glsl_postprocess_uservec2", "0 0 0 0");\r
+ cvar_set("r_glsl_postprocess_uservec2_enable", "0");\r
+ }\r
\r
// Draw the mouse cursor\r
// NOTE: drawpic must happen after R_RenderScene for some reason\r