From bc1e659c7bcc48919e6e0fd79fa09f83a2fc1db7 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sun, 16 Sep 2018 22:38:20 +0200 Subject: [PATCH 1/6] Revert "- reworked fog uniforms to move the global fog mode setting to the viewpoint buffer." This reverts commit 8b26b6dd1ed67127fe241418e63fad27faea76f0. This was causing problems with light mode 2 because some edge cases were no longer handled properly. --- src/gl/data/gl_viewpointbuffer.cpp | 1 - src/gl/renderer/gl_renderstate.cpp | 24 +++++++++++++++++---- src/gl/scene/gl_scene.cpp | 1 - src/gl/shaders/gl_shader.cpp | 4 ++-- src/gl/shaders/gl_shader.h | 1 + src/hwrenderer/scene/hw_drawinfo.cpp | 1 - src/hwrenderer/scene/hw_viewpointuniforms.h | 1 - wadsrc/static/shaders/glsl/fogboundary.fp | 2 +- wadsrc/static/shaders/glsl/main.fp | 16 +++++++------- 9 files changed, 32 insertions(+), 19 deletions(-) diff --git a/src/gl/data/gl_viewpointbuffer.cpp b/src/gl/data/gl_viewpointbuffer.cpp index eb4d8c92e..611db9e40 100644 --- a/src/gl/data/gl_viewpointbuffer.cpp +++ b/src/gl/data/gl_viewpointbuffer.cpp @@ -144,7 +144,6 @@ void GLViewpointBuffer::Set2D(int width, int height) HWViewpointUniforms matrices; matrices.SetDefaults(); matrices.mProjectionMatrix.ortho(0, width, height, 0, -1.0f, 1.0f); - matrices.mFogEnabled = 3; matrices.CalcDependencies(); Map(); memcpy(mBufferPointer, &matrices, sizeof(matrices)); diff --git a/src/gl/renderer/gl_renderstate.cpp b/src/gl/renderer/gl_renderstate.cpp index a5de63896..e585296f6 100644 --- a/src/gl/renderer/gl_renderstate.cpp +++ b/src/gl/renderer/gl_renderstate.cpp @@ -119,7 +119,7 @@ bool FRenderState::ApplyShader() static uint64_t firstFrame = 0; // if firstFrame is not yet initialized, initialize it to current time // if we're going to overflow a float (after ~4.6 hours, or 24 bits), re-init to regain precision - if ((firstFrame == 0) || (screen->FrameTime - firstFrame >= 1 << 24) || level.ShaderStartTime >= firstFrame) + if ((firstFrame == 0) || (screen->FrameTime - firstFrame >= 1<<24) || level.ShaderStartTime >= firstFrame) firstFrame = screen->FrameTime; static const float nulvec[] = { 0.f, 0.f, 0.f, 0.f }; @@ -133,15 +133,31 @@ bool FRenderState::ApplyShader() activeShader->Bind(); } + int fogset = 0; + + if (mFogEnabled) + { + if (mFogEnabled == 2) + { + fogset = -3; // 2D rendering with 'foggy' overlay. + } + else if ((mFogColor & 0xffffff) == 0) + { + fogset = gl_fogmode; + } + else + { + fogset = -gl_fogmode; + } + } + glVertexAttrib4fv(VATTR_COLOR, mColor.vec); glVertexAttrib4fv(VATTR_NORMAL, mNormal.vec); activeShader->muDesaturation.Set(mDesaturation / 255.f); + activeShader->muFogEnabled.Set(fogset); activeShader->muTextureMode.Set(mTextureMode == TM_MODULATE && mTempTM == TM_OPAQUE ? TM_OPAQUE : mTextureMode); - float fds = mLightParms[2]; - if (!mFogEnabled) mLightParms[2] = 0; activeShader->muLightParms.Set(mLightParms); - mLightParms[2] = fds; activeShader->muFogColor.Set(mFogColor); activeShader->muObjectColor.Set(mObjectColor); activeShader->muObjectColor2.Set(mObjectColor2); diff --git a/src/gl/scene/gl_scene.cpp b/src/gl/scene/gl_scene.cpp index 3044d4bd6..1a83521f1 100644 --- a/src/gl/scene/gl_scene.cpp +++ b/src/gl/scene/gl_scene.cpp @@ -375,7 +375,6 @@ void FDrawInfo::DrawEndScene2D(sector_t * viewsector) HWViewpointUniforms vp = VPUniforms; vp.mViewMatrix.loadIdentity(); vp.mProjectionMatrix = vrmode->GetHUDSpriteProjection(); - vp.mFogEnabled = 0; GLRenderer->mViewpoints->SetViewpoint(&vp); glDisable(GL_DEPTH_TEST); glDisable(GL_MULTISAMPLE); diff --git a/src/gl/shaders/gl_shader.cpp b/src/gl/shaders/gl_shader.cpp index 19d30ed47..e0d656038 100644 --- a/src/gl/shaders/gl_shader.cpp +++ b/src/gl/shaders/gl_shader.cpp @@ -68,8 +68,6 @@ bool FShader::Load(const char * name, const char * vert_prog_lump, const char * int uViewHeight; // Software fuzz scaling float uClipHeight; float uClipHeightDirection; - int uFogEnabled; - }; )"; @@ -100,6 +98,7 @@ bool FShader::Load(const char * name, const char * vert_prog_lump, const char * i_data += "#define uFogDensity uLightAttr.b\n"; i_data += "#define uLightFactor uLightAttr.g\n"; i_data += "#define uLightDist uLightAttr.r\n"; + i_data += "uniform int uFogEnabled;\n"; // dynamic lights i_data += "uniform int uLightIndex;\n"; @@ -331,6 +330,7 @@ bool FShader::Load(const char * name, const char * vert_prog_lump, const char * muDesaturation.Init(hShader, "uDesaturationFactor"); + muFogEnabled.Init(hShader, "uFogEnabled"); muTextureMode.Init(hShader, "uTextureMode"); muLightParms.Init(hShader, "uLightAttr"); muClipSplit.Init(hShader, "uClipSplit"); diff --git a/src/gl/shaders/gl_shader.h b/src/gl/shaders/gl_shader.h index 2d1d28f76..46ba3c793 100644 --- a/src/gl/shaders/gl_shader.h +++ b/src/gl/shaders/gl_shader.h @@ -242,6 +242,7 @@ class FShader FName mName; FBufferedUniform1f muDesaturation; + FBufferedUniform1i muFogEnabled; FBufferedUniform1i muTextureMode; FBufferedUniform4f muLightParms; FBufferedUniform2f muClipSplit; diff --git a/src/hwrenderer/scene/hw_drawinfo.cpp b/src/hwrenderer/scene/hw_drawinfo.cpp index bf04aef6c..b5dce2247 100644 --- a/src/hwrenderer/scene/hw_drawinfo.cpp +++ b/src/hwrenderer/scene/hw_drawinfo.cpp @@ -280,6 +280,5 @@ void HWViewpointUniforms::SetDefaults() mGlobVis = (float)R_GetGlobVis(r_viewwindow, r_visibility) / 32.f; mPalLightLevels = static_cast(gl_bandedswlight) | (static_cast(gl_fogmode) << 8); mClipLine.X = -10000000.0f; - mFogEnabled = gl_fogmode; } diff --git a/src/hwrenderer/scene/hw_viewpointuniforms.h b/src/hwrenderer/scene/hw_viewpointuniforms.h index 675ee71eb..27a78aef4 100644 --- a/src/hwrenderer/scene/hw_viewpointuniforms.h +++ b/src/hwrenderer/scene/hw_viewpointuniforms.h @@ -16,7 +16,6 @@ struct HWViewpointUniforms int mViewHeight = 0; float mClipHeight = 0.f; float mClipHeightDirection = 0.f; - int mFogEnabled = 0; void CalcDependencies() { diff --git a/wadsrc/static/shaders/glsl/fogboundary.fp b/wadsrc/static/shaders/glsl/fogboundary.fp index 81880f984..9dcdb4850 100644 --- a/wadsrc/static/shaders/glsl/fogboundary.fp +++ b/wadsrc/static/shaders/glsl/fogboundary.fp @@ -15,7 +15,7 @@ void main() // // calculate fog factor // - if (uFogEnabled == 1) + if (uFogEnabled == -1) { fogdist = pixelpos.w; } diff --git a/wadsrc/static/shaders/glsl/main.fp b/wadsrc/static/shaders/glsl/main.fp index c4caa785e..d5283b26c 100644 --- a/wadsrc/static/shaders/glsl/main.fp +++ b/wadsrc/static/shaders/glsl/main.fp @@ -358,7 +358,7 @@ vec4 getLightColor(Material material, float fogdist, float fogfactor) float newlightlevel = 1.0 - R_DoomLightingEquation(uLightLevel); color.rgb *= newlightlevel; } - else if (uFogColor.rgb == vec3(0.0)) + else if (uFogEnabled > 0) { // brightening around the player for light mode 2 if (fogdist < uLightDist) @@ -421,7 +421,7 @@ vec3 AmbientOcclusionColor() // // calculate fog factor // - if (uFogEnabled == 1) + if (uFogEnabled == -1) { fogdist = pixelpos.w; } @@ -449,17 +449,17 @@ void main() if (frag.a <= uAlphaThreshold) discard; #endif - if (uFogEnabled != 3) // check for special 2D 'fog' mode. + if (uFogEnabled != -3) // check for special 2D 'fog' mode. { float fogdist = 0.0; - float fogfactor = 1.0; + float fogfactor = 0.0; // // calculate fog factor // - if (uFogEnabled != 0 && uFogDensity != 0) + if (uFogEnabled != 0) { - if (uFogEnabled == 1) + if (uFogEnabled == 1 || uFogEnabled == -1) { fogdist = pixelpos.w; } @@ -476,7 +476,7 @@ void main() // // colored fog // - if (uFogColor.rgb != vec3(0.0)) + if (uFogEnabled < 0) { frag = applyFog(frag, fogfactor); } @@ -494,7 +494,7 @@ void main() vec4 cm = (uObjectColor + gray * (uObjectColor2 - uObjectColor)) * 2; frag = vec4(clamp(cm.rgb, 0.0, 1.0), frag.a); } - frag = frag * ProcessLight(material, vColor); + frag = frag * ProcessLight(material, vColor); frag.rgb = frag.rgb + uFogColor.rgb; } FragColor = frag; From c8852b8fea9291aa6287280a5d0491e576e4ceac Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 29 Sep 2018 13:23:40 +0200 Subject: [PATCH 2/6] - enabled the linear shadowmap filter. Although this doesn't look as good as the PCF version it is a lot less calculation intensive and therefore more suitable for weaker hardware. It also tends to bleed through walls a lot less. --- src/gl/shaders/gl_shader.cpp | 1 + src/hwrenderer/scene/hw_drawinfo.cpp | 1 + src/hwrenderer/scene/hw_viewpointuniforms.h | 1 + src/hwrenderer/utility/hw_cvars.cpp | 2 ++ src/hwrenderer/utility/hw_cvars.h | 2 ++ wadsrc/static/shaders/glsl/main.fp | 37 +++++++++++---------- 6 files changed, 26 insertions(+), 18 deletions(-) diff --git a/src/gl/shaders/gl_shader.cpp b/src/gl/shaders/gl_shader.cpp index e0d656038..564365341 100644 --- a/src/gl/shaders/gl_shader.cpp +++ b/src/gl/shaders/gl_shader.cpp @@ -68,6 +68,7 @@ bool FShader::Load(const char * name, const char * vert_prog_lump, const char * int uViewHeight; // Software fuzz scaling float uClipHeight; float uClipHeightDirection; + int uShadowmapFilter; }; )"; diff --git a/src/hwrenderer/scene/hw_drawinfo.cpp b/src/hwrenderer/scene/hw_drawinfo.cpp index b5dce2247..c72f510ae 100644 --- a/src/hwrenderer/scene/hw_drawinfo.cpp +++ b/src/hwrenderer/scene/hw_drawinfo.cpp @@ -280,5 +280,6 @@ void HWViewpointUniforms::SetDefaults() mGlobVis = (float)R_GetGlobVis(r_viewwindow, r_visibility) / 32.f; mPalLightLevels = static_cast(gl_bandedswlight) | (static_cast(gl_fogmode) << 8); mClipLine.X = -10000000.0f; + mShadowmapFilter = gl_shadowmap_filter; } diff --git a/src/hwrenderer/scene/hw_viewpointuniforms.h b/src/hwrenderer/scene/hw_viewpointuniforms.h index 27a78aef4..1bd57faa0 100644 --- a/src/hwrenderer/scene/hw_viewpointuniforms.h +++ b/src/hwrenderer/scene/hw_viewpointuniforms.h @@ -16,6 +16,7 @@ struct HWViewpointUniforms int mViewHeight = 0; float mClipHeight = 0.f; float mClipHeightDirection = 0.f; + int mShadowmapFilter = 1; void CalcDependencies() { diff --git a/src/hwrenderer/utility/hw_cvars.cpp b/src/hwrenderer/utility/hw_cvars.cpp index c849e62d5..563bdd9f8 100644 --- a/src/hwrenderer/utility/hw_cvars.cpp +++ b/src/hwrenderer/utility/hw_cvars.cpp @@ -132,3 +132,5 @@ CUSTOM_CVAR(Int, gl_fuzztype, 0, CVAR_ARCHIVE) { if (self < 0 || self > 8) self = 0; } + +CVAR(Bool, gl_shadowmap_filter, 1, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) \ No newline at end of file diff --git a/src/hwrenderer/utility/hw_cvars.h b/src/hwrenderer/utility/hw_cvars.h index 440265930..eb1aafe44 100644 --- a/src/hwrenderer/utility/hw_cvars.h +++ b/src/hwrenderer/utility/hw_cvars.h @@ -69,3 +69,5 @@ EXTERN_CVAR(Bool, gl_billboard_faces_camera) EXTERN_CVAR(Bool, gl_billboard_particles) EXTERN_CVAR(Int, gl_enhanced_nv_stealth) EXTERN_CVAR(Int, gl_fuzztype) + +EXTERN_CVAR(Bool, gl_shadowmap_filter) \ No newline at end of file diff --git a/wadsrc/static/shaders/glsl/main.fp b/wadsrc/static/shaders/glsl/main.fp index 7a6c98436..714f63ed2 100644 --- a/wadsrc/static/shaders/glsl/main.fp +++ b/wadsrc/static/shaders/glsl/main.fp @@ -218,9 +218,6 @@ float sampleShadowmapLinear(vec2 dir, float v) #define PCF_FILTER_STEP_COUNT 3 #define PCF_COUNT (PCF_FILTER_STEP_COUNT * 2 + 1) -// #define USE_LINEAR_SHADOW_FILTER -#define USE_PCF_SHADOW_FILTER 1 - float shadowmapAttenuation(vec4 lightpos, float shadowIndex) { if (shadowIndex >= 1024.0) @@ -235,23 +232,27 @@ float shadowmapAttenuation(vec4 lightpos, float shadowIndex) vec2 dir = ray / length; -#if defined(USE_LINEAR_SHADOW_FILTER) - ray -= dir * 6.0; // Shadow acne margin - return sampleShadowmapLinear(ray, v); -#elif defined(USE_PCF_SHADOW_FILTER) - ray -= dir * 2.0; // Shadow acne margin - dir = dir * min(length / 50.0, 1.0); // avoid sampling behind light - - vec2 normal = vec2(-dir.y, dir.x); - vec2 bias = dir * 10.0; - - float sum = 0.0; - for (float x = -PCF_FILTER_STEP_COUNT; x <= PCF_FILTER_STEP_COUNT; x++) + if (uShadowmapFilter == 0) { - sum += sampleShadowmap(ray + normal * x - bias * abs(x), v); + ray -= dir * 2.0; // Shadow acne margin + return sampleShadowmapLinear(ray, v); } - return sum / PCF_COUNT; -#else // nearest shadow filter + else + { + ray -= dir * 2.0; // Shadow acne margin + dir = dir * min(length / 50.0, 1.0); // avoid sampling behind light + + vec2 normal = vec2(-dir.y, dir.x); + vec2 bias = dir * 10.0; + + float sum = 0.0; + for (float x = -PCF_FILTER_STEP_COUNT; x <= PCF_FILTER_STEP_COUNT; x++) + { + sum += sampleShadowmap(ray + normal * x - bias * abs(x), v); + } + return sum / PCF_COUNT; + } +#if 0 // nearest shadow filter (not used) ray -= dir * 6.0; // Shadow acne margin return sampleShadowmap(ray, v); #endif From 35bb2d30792e9b2d6623271a35a4ad16f7168957 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 29 Sep 2018 13:31:13 +0200 Subject: [PATCH 3/6] - add new option to menu --- wadsrc/static/language.enu | 1 + wadsrc/static/menudef.txt | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/wadsrc/static/language.enu b/wadsrc/static/language.enu index 3e20e1e03..065d547be 100644 --- a/wadsrc/static/language.enu +++ b/wadsrc/static/language.enu @@ -2787,6 +2787,7 @@ GLLIGHTMNU_LIGHTSPRITES = "Lights affect sprites"; GLLIGHTMNU_LIGHTPARTICLES = "Lights affect particles"; GLLIGHTMNU_LIGHTSHADOWMAP = "Light shadowmaps"; GLLIGHTMNU_LIGHTSHADOWMAPQUALITY = "Shadowmap quality"; +GLLIGHTMNU_LIGHTSHADOWMAPFILTER = "Shadowmap filter"; // OpenGL Preferences GLPREFMNU_TITLE = "OPENGL PREFERENCES"; diff --git a/wadsrc/static/menudef.txt b/wadsrc/static/menudef.txt index d8d3c9a4c..9e3f801cc 100644 --- a/wadsrc/static/menudef.txt +++ b/wadsrc/static/menudef.txt @@ -2225,6 +2225,13 @@ OptionValue ShadowMapQuality 1024, "1024" } +OptionValue ShadowMapFilter +{ + 0, "$OPTVAL_LINEAR" + 1, "PCF" +} + + OptionMenu "GLTextureGLOptions" protected { Title "$GLTEXMNU_TITLE" @@ -2259,6 +2266,7 @@ OptionMenu "GLLightOptions" protected Option "$GLLIGHTMNU_LIGHTPARTICLES", gl_light_particles, "YesNo" Option "$GLLIGHTMNU_LIGHTSHADOWMAP", gl_light_shadowmap, "YesNo" Option "$GLLIGHTMNU_LIGHTSHADOWMAPQUALITY", gl_shadowmap_quality, "ShadowMapQuality" + Option "$GLLIGHTMNU_LIGHTSHADOWMAPFILTER", gl_shadowmap_filter, "ShadowMapFilter" } OptionMenu "OpenGLOptions" protected From 797f88a6c8e81a38238158cb5e1509265cd7b198 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Wed, 3 Oct 2018 13:45:54 +0200 Subject: [PATCH 4/6] - some tweaking of shadowmap filter setting to allow changing the PCF filter's number of samplings. --- src/hwrenderer/utility/hw_cvars.cpp | 4 +++- src/hwrenderer/utility/hw_cvars.h | 2 +- wadsrc/static/shaders/glsl/main.fp | 13 ++++++------- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/hwrenderer/utility/hw_cvars.cpp b/src/hwrenderer/utility/hw_cvars.cpp index 563bdd9f8..7188a96b3 100644 --- a/src/hwrenderer/utility/hw_cvars.cpp +++ b/src/hwrenderer/utility/hw_cvars.cpp @@ -133,4 +133,6 @@ CUSTOM_CVAR(Int, gl_fuzztype, 0, CVAR_ARCHIVE) if (self < 0 || self > 8) self = 0; } -CVAR(Bool, gl_shadowmap_filter, 1, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) \ No newline at end of file +CUSTOM_CVAR(Int, gl_shadowmap_filter, 1, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) +{ + if (self < 0 || self > 8) self = 1; \ No newline at end of file diff --git a/src/hwrenderer/utility/hw_cvars.h b/src/hwrenderer/utility/hw_cvars.h index eb1aafe44..8e4ebbca8 100644 --- a/src/hwrenderer/utility/hw_cvars.h +++ b/src/hwrenderer/utility/hw_cvars.h @@ -70,4 +70,4 @@ EXTERN_CVAR(Bool, gl_billboard_particles) EXTERN_CVAR(Int, gl_enhanced_nv_stealth) EXTERN_CVAR(Int, gl_fuzztype) -EXTERN_CVAR(Bool, gl_shadowmap_filter) \ No newline at end of file +EXTERN_CVAR(Int, gl_shadowmap_filter) \ No newline at end of file diff --git a/wadsrc/static/shaders/glsl/main.fp b/wadsrc/static/shaders/glsl/main.fp index 714f63ed2..c78bb0e02 100644 --- a/wadsrc/static/shaders/glsl/main.fp +++ b/wadsrc/static/shaders/glsl/main.fp @@ -215,9 +215,6 @@ float sampleShadowmapLinear(vec2 dir, float v) // //=========================================================================== -#define PCF_FILTER_STEP_COUNT 3 -#define PCF_COUNT (PCF_FILTER_STEP_COUNT * 2 + 1) - float shadowmapAttenuation(vec4 lightpos, float shadowIndex) { if (shadowIndex >= 1024.0) @@ -232,7 +229,7 @@ float shadowmapAttenuation(vec4 lightpos, float shadowIndex) vec2 dir = ray / length; - if (uShadowmapFilter == 0) + if (uShadowmapFilter <= 0) { ray -= dir * 2.0; // Shadow acne margin return sampleShadowmapLinear(ray, v); @@ -246,11 +243,13 @@ float shadowmapAttenuation(vec4 lightpos, float shadowIndex) vec2 bias = dir * 10.0; float sum = 0.0; - for (float x = -PCF_FILTER_STEP_COUNT; x <= PCF_FILTER_STEP_COUNT; x++) + float step_count = ((uShadowmapFilter - 1) / 2.); + + for (float x = -step_count; x <= step_count; x++) { - sum += sampleShadowmap(ray + normal * x - bias * abs(x), v); + sum += sampleShadowmap(ray + normal * x /*- bias * abs(x)*/, v); } - return sum / PCF_COUNT; + return sum / uShadowmapFilter; } #if 0 // nearest shadow filter (not used) ray -= dir * 6.0; // Shadow acne margin From 92e419d65c605546b93c018b2255e11790e170c5 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Wed, 3 Oct 2018 13:46:25 +0200 Subject: [PATCH 5/6] - toned down the intensity of the dynamic lights for Doom's torches. --- wadsrc_lights/static/filter/doom.doom1/gldefs.txt | 12 ++++++------ wadsrc_lights/static/filter/doom.doom2/gldefs.txt | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/wadsrc_lights/static/filter/doom.doom1/gldefs.txt b/wadsrc_lights/static/filter/doom.doom1/gldefs.txt index 83c30369d..61536f97f 100644 --- a/wadsrc_lights/static/filter/doom.doom1/gldefs.txt +++ b/wadsrc_lights/static/filter/doom.doom1/gldefs.txt @@ -384,7 +384,7 @@ object TechLamp // Tall red torch flickerlight2 BIGREDTORCH { - color 1.0 0.5 0.2 + color 0.7 0.35 0.14 size 90 secondarySize 99 interval 0.1 @@ -400,7 +400,7 @@ object RedTorch // Tall green torch flickerlight2 BIGGREENTORCH { - color 0.3 1.0 0.3 + color 0.2 0.7 0.2 size 90 secondarySize 99 interval 0.1 @@ -416,7 +416,7 @@ object GreenTorch // Tall blue torch flickerlight2 BIGBLUETORCH { - color 0.3 0.3 1.0 + color 0.2 0.2 0.7 size 90 secondarySize 99 interval 0.1 @@ -432,7 +432,7 @@ object BlueTorch // Small red torch flickerlight2 SMALLREDTORCH { - color 1.0 0.5 0.2 + color 0.7 0.35 0.14 size 72 secondarySize 81 interval 0.1 @@ -448,7 +448,7 @@ object ShortRedTorch // Small green torch flickerlight2 SMALLGREENTORCH { - color 0.3 1.0 0.3 + color 0.2 0.7 0.2 size 72 secondarySize 81 interval 0.1 @@ -464,7 +464,7 @@ object ShortGreenTorch // Small blue torch flickerlight2 SMALLBLUETORCH { - color 0.3 0.3 1.0 + color 0.2 0.2 0.7 size 72 secondarySize 81 interval 0.1 diff --git a/wadsrc_lights/static/filter/doom.doom2/gldefs.txt b/wadsrc_lights/static/filter/doom.doom2/gldefs.txt index 83c30369d..61536f97f 100644 --- a/wadsrc_lights/static/filter/doom.doom2/gldefs.txt +++ b/wadsrc_lights/static/filter/doom.doom2/gldefs.txt @@ -384,7 +384,7 @@ object TechLamp // Tall red torch flickerlight2 BIGREDTORCH { - color 1.0 0.5 0.2 + color 0.7 0.35 0.14 size 90 secondarySize 99 interval 0.1 @@ -400,7 +400,7 @@ object RedTorch // Tall green torch flickerlight2 BIGGREENTORCH { - color 0.3 1.0 0.3 + color 0.2 0.7 0.2 size 90 secondarySize 99 interval 0.1 @@ -416,7 +416,7 @@ object GreenTorch // Tall blue torch flickerlight2 BIGBLUETORCH { - color 0.3 0.3 1.0 + color 0.2 0.2 0.7 size 90 secondarySize 99 interval 0.1 @@ -432,7 +432,7 @@ object BlueTorch // Small red torch flickerlight2 SMALLREDTORCH { - color 1.0 0.5 0.2 + color 0.7 0.35 0.14 size 72 secondarySize 81 interval 0.1 @@ -448,7 +448,7 @@ object ShortRedTorch // Small green torch flickerlight2 SMALLGREENTORCH { - color 0.3 1.0 0.3 + color 0.2 0.7 0.2 size 72 secondarySize 81 interval 0.1 @@ -464,7 +464,7 @@ object ShortGreenTorch // Small blue torch flickerlight2 SMALLBLUETORCH { - color 0.3 0.3 1.0 + color 0.2 0.2 0.7 size 72 secondarySize 81 interval 0.1 From 51dfc82153415169589e0f38b9c523874e473cae Mon Sep 17 00:00:00 2001 From: Rachael Alexanderson Date: Wed, 3 Oct 2018 09:39:32 -0400 Subject: [PATCH 6/6] - fix missing curly brace --- src/hwrenderer/utility/hw_cvars.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/hwrenderer/utility/hw_cvars.cpp b/src/hwrenderer/utility/hw_cvars.cpp index 7188a96b3..f0a0f8c83 100644 --- a/src/hwrenderer/utility/hw_cvars.cpp +++ b/src/hwrenderer/utility/hw_cvars.cpp @@ -135,4 +135,5 @@ CUSTOM_CVAR(Int, gl_fuzztype, 0, CVAR_ARCHIVE) CUSTOM_CVAR(Int, gl_shadowmap_filter, 1, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) { - if (self < 0 || self > 8) self = 1; \ No newline at end of file + if (self < 0 || self > 8) self = 1; +}