diff --git a/src/hardware/hw_main.c b/src/hardware/hw_main.c index 13411ecc913058ec614b23c51ed32d15b05af55b..86ee6dead265a2fc050163498ebeb474109abd2b 100644 --- a/src/hardware/hw_main.c +++ b/src/hardware/hw_main.c @@ -179,7 +179,7 @@ void HWR_Lighting(FSurfaceInfo *Surface, INT32 light_level, extracolormap_t *col } // Clamp the light level, since it can sometimes go out of the 0-255 range from animations - light_level = min(max(light_level, 0), 255); + light_level = min(max(light_level, cv_glsecbright.value), 255); V_CubeApply(&tint_color.s.red, &tint_color.s.green, &tint_color.s.blue); V_CubeApply(&fade_color.s.red, &fade_color.s.green, &fade_color.s.blue); @@ -5678,9 +5678,12 @@ static CV_PossibleValue_t glfiltermode_cons_t[]= {{HWD_SET_TEXTUREFILTER_POINTSA {HWD_SET_TEXTUREFILTER_MIXED3, "Nearest_Mipmap"}, {0, NULL}}; CV_PossibleValue_t glanisotropicmode_cons_t[] = {{1, "MIN"}, {16, "MAX"}, {0, NULL}}; +static CV_PossibleValue_t glsecbright_cons_t[] = {{0, "MIN"}, {255, "MAX"}, {0, NULL}}; consvar_t cv_glshaders = CVAR_INIT ("gr_shaders", "On", "Enables OpenGL shaders", CV_SAVE|CV_CALL, glshaders_cons_t, CV_glshaders_OnChange); +consvar_t cv_glsecbright = CVAR_INIT("gr_secbright", "0", NULL, CV_SAVE, glsecbright_cons_t, NULL); + #ifdef ALAM_LIGHTING consvar_t cv_gldynamiclighting = CVAR_INIT ("gr_dynamiclighting", "On", NULL, CV_SAVE, CV_OnOff, NULL); consvar_t cv_glstaticlighting = CVAR_INIT ("gr_staticlighting", "On", NULL, CV_SAVE, CV_OnOff, NULL); @@ -5782,6 +5785,7 @@ void HWR_AddCommands(void) CV_RegisterVar(&cv_glslopecontrast); CV_RegisterVar(&cv_glshearing); CV_RegisterVar(&cv_glshaders); + CV_RegisterVar(&cv_glsecbright); CV_RegisterVar(&cv_glfiltermode); CV_RegisterVar(&cv_glanisotropicmode); diff --git a/src/hardware/hw_main.h b/src/hardware/hw_main.h index a9d9f300ae118ffaaf5bb44c0b3fd58c0d2cabcc..22ea3f24c73fb37b514a4e3ae07c13510c0b73f0 100644 --- a/src/hardware/hw_main.h +++ b/src/hardware/hw_main.h @@ -81,6 +81,7 @@ extern consvar_t cv_glcoronasize; #endif extern consvar_t cv_glshaders, cv_glallowshaders; +extern consvar_t cv_glsecbright; extern consvar_t cv_glmodels; extern consvar_t cv_glmodelinterpolation; extern consvar_t cv_glmodellighting; diff --git a/src/m_menu.c b/src/m_menu.c index 956ce4d2a211bdf9fd7d6caceef462806d52dd29..a7fba1b1688f7028b5ef20b84361253f7eabbf4f 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1408,16 +1408,17 @@ static menuitem_t OP_OpenGLOptionsMenu[] = {IT_STRING|IT_CVAR, NULL, "Shaders", &cv_glshaders, 63}, {IT_STRING|IT_CVAR, NULL, "Palette rendering", &cv_glpaletterendering, 73}, {IT_STRING|IT_CVAR, NULL, "Lack of perspective", &cv_glshearing, 83}, + {IT_STRING | IT_CVAR, NULL, "Min Shader Brightness", &cv_glsecbright, 93}, - {IT_HEADER, NULL, "Miscellaneous", NULL, 102}, - {IT_STRING|IT_CVAR, NULL, "Bit depth", &cv_scr_depth, 114}, - {IT_STRING|IT_CVAR, NULL, "Texture filter", &cv_glfiltermode, 124}, - {IT_STRING|IT_CVAR, NULL, "Anisotropic", &cv_glanisotropicmode, 134}, + {IT_HEADER, NULL, "Miscellaneous", NULL, 112}, + {IT_STRING|IT_CVAR, NULL, "Bit depth", &cv_scr_depth, 124}, + {IT_STRING|IT_CVAR, NULL, "Texture filter", &cv_glfiltermode, 134}, + {IT_STRING|IT_CVAR, NULL, "Anisotropic", &cv_glanisotropicmode, 144}, #ifdef ALAM_LIGHTING - {IT_SUBMENU|IT_STRING, NULL, "Lighting...", &OP_OpenGLLightingDef, 144}, + {IT_SUBMENU|IT_STRING, NULL, "Lighting...", &OP_OpenGLLightingDef, 154}, #endif #if defined (_WINDOWS) && (!(defined (__unix__) || defined (UNIXCOMMON) || defined (HAVE_SDL))) - {IT_STRING|IT_CVAR, NULL, "Fullscreen", &cv_fullscreen, 154}, + {IT_STRING|IT_CVAR, NULL, "Fullscreen", &cv_fullscreen, 164}, #endif };