Ticket #4626: fog_v3.patch
File fog_v3.patch, 9.5 KB (added by , 6 years ago) |
---|
-
binaries/data/config/default.cfg
74 74 shadowpcf = true 75 75 vsync = false 76 76 particles = true 77 fog = true 77 78 silhouettes = true 78 79 showsky = true 79 80 -
binaries/data/mods/public/gui/options/options.json
153 153 }, 154 154 { 155 155 "type": "boolean", 156 "label": "Fog", 157 "tooltip": "Enable fog", 158 "dependencies": ["preferglsl"], 159 "config": "fog", 160 "function": "Renderer_SetFogEnabled" 161 }, 162 { 163 "type": "boolean", 156 164 "label": "Post Processing", 157 165 "tooltip": "Use screen-space postprocessing filters (HDR, Bloom, DOF, etc)", 158 166 "config": "postproc", -
binaries/data/mods/public/shaders/glsl/model_common.fs
225 225 color = mix(texdiffuse, color, specular.a); 226 226 #endif 227 227 228 color = get_fog(color); 228 #if USE_FOG 229 color = get_fog(color); 230 #endif 229 231 230 232 #if !IGNORE_LOS 231 233 float los = texture2D(losTex, v_los).a; -
binaries/data/mods/public/shaders/glsl/particle.fs
35 35 los = los < 0.03 ? 0.0 : los; 36 36 color.rgb *= los; 37 37 38 gl_FragColor = get_fog(color); 38 #if USE_FOG 39 gl_FragColor = get_fog(color); 40 #else 41 gl_FragColor = color; 42 #endif 39 43 } -
binaries/data/mods/public/shaders/glsl/solid_player.fs
22 22 23 23 void main() 24 24 { 25 gl_FragColor = vec4(get_fog(playerColor.rgb),playerColor.a); 25 #if USE_FOG 26 gl_FragColor = vec4(get_fog(playerColor.rgb),playerColor.a); 27 #else 28 gl_FragColor = vec4(playerColor.rgb,playerColor.a); 29 #endif 26 30 } -
binaries/data/mods/public/shaders/glsl/terrain_common.fs
236 236 color = mix(texdiffuse, color, specular.a); 237 237 #endif 238 238 239 color = get_fog(color); 239 #if USE_FOG 240 color = get_fog(color); 241 #endif 240 242 241 243 float los = texture2D(losTex, v_los).a; 242 244 los = los < 0.03 ? 0.0 : los; -
binaries/data/mods/public/shaders/glsl/water_high.fs
339 339 foam1.x = foaminterp.x * WindCosSin.x - foaminterp.z * WindCosSin.y; 340 340 341 341 float foam = FoamEffects.r * FoamEffects.a*0.4 + pow(foam1.x*(5.0+waviness),(2.6 - waviness/5.5)); 342 343 gl_FragColor.rgb = get_fog(color) * losMod + foam * losMod; 342 343 #if USE_FOG 344 gl_FragColor.rgb = get_fog(color) * losMod + foam * losMod; 345 #else 346 gl_FragColor.rgb = color * losMod + foam * losMod; 347 #endif 344 348 #else 345 gl_FragColor.rgb = get_fog(color) * losMod; 349 #if USE_FOG 350 gl_FragColor.rgb = get_fog(color) * losMod; 351 #else 352 gl_FragColor.rgb = color * losMod; 353 #endif 346 354 #endif 347 355 348 356 gl_FragColor.a = 1.0; -
source/ps/CStrInternStatic.h
62 62 X(USE_SHADOW_PCF) 63 63 X(USE_SHADOW_SAMPLER) 64 64 X(USE_SHADOWS_ON_WATER) 65 X(USE_FOG) 65 66 X(WATERTYPE_CLAP) 66 67 X(WATERTYPE_LAKE) 67 68 X2(_emptystring, "") -
source/ps/GameSetup/Config.cpp
50 50 bool g_WaterShadows = false; 51 51 52 52 bool g_Particles = false; 53 bool g_Fog = true; 53 54 bool g_Silhouettes = false; 54 55 bool g_ShowSky = false; 55 56 … … 105 106 106 107 CFG_GET_VAL("renderpath", g_RenderPath); 107 108 CFG_GET_VAL("particles", g_Particles); 109 CFG_GET_VAL("fog", g_Fog); 108 110 CFG_GET_VAL("silhouettes", g_Silhouettes); 109 111 CFG_GET_VAL("showsky", g_ShowSky); 110 112 CFG_GET_VAL("preferglsl", g_PreferGLSL); -
source/ps/GameSetup/Config.h
67 67 extern bool g_ShadowPCF; 68 68 // flag to switch on particles rendering 69 69 extern bool g_Particles; 70 // flag to switch on fog 71 extern bool g_Fog; 70 72 // flag to switch on unit silhouettes 71 73 extern bool g_Silhouettes; 72 74 // flag to switch on sky rendering -
source/ps/GameSetup/GameSetup.cpp
632 632 g_ConfigDB.SetValueBool(CFG_SYSTEM, "shadowpcf", g_ShadowPCF); 633 633 g_Renderer.SetOptionBool(CRenderer::OPT_PARTICLES, g_Particles); 634 634 g_ConfigDB.SetValueBool(CFG_SYSTEM, "particles", g_Particles); 635 g_Renderer.SetOptionBool(CRenderer::OPT_FOG, g_Fog); 636 g_ConfigDB.SetValueBool(CFG_SYSTEM, "fog", g_Fog); 635 637 g_Renderer.SetOptionBool(CRenderer::OPT_SILHOUETTES, g_Silhouettes); 636 638 g_ConfigDB.SetValueBool(CFG_SYSTEM, "silhouettes", g_Silhouettes); 637 639 g_Renderer.SetOptionBool(CRenderer::OPT_SHOWSKY, g_ShowSky); -
source/renderer/Renderer.cpp
441 441 m_Options.m_ARBProgramShadow = true; 442 442 m_Options.m_ShadowPCF = false; 443 443 m_Options.m_Particles = false; 444 m_Options.m_Fog = false; 444 445 m_Options.m_Silhouettes = false; 445 446 m_Options.m_PreferGLSL = false; 446 447 m_Options.m_ForceAlphaTest = false; … … 582 583 if (m_LightEnv) 583 584 m->globalContext.Add(CStrIntern("LIGHTING_MODEL_" + m_LightEnv->GetLightingModel()), str_1); 584 585 586 if (m_Options.m_PreferGLSL && m_Options.m_Fog) 587 m->globalContext.Add(str_USE_FOG, str_1); 588 585 589 m->Model.ModShader = LitRenderModifierPtr(new ShaderRenderModifier()); 586 590 587 591 bool cpuLighting = (GetRenderPath() == RP_FIXED); … … 722 726 MakeShadersDirty(); 723 727 RecomputeSystemShaderDefines(); 724 728 break; 729 case OPT_FOG: 730 m_Options.m_Fog = value; 731 MakeShadersDirty(); 732 break; 725 733 case OPT_SILHOUETTES: 726 734 m_Options.m_Silhouettes = value; 727 735 break; … … 770 778 return m_Options.m_Particles; 771 779 case OPT_PREFERGLSL: 772 780 return m_Options.m_PreferGLSL; 781 case OPT_FOG: 782 return m_Options.m_Fog; 773 783 case OPT_SILHOUETTES: 774 784 return m_Options.m_Silhouettes; 775 785 case OPT_SHOWSKY: … … 2085 2095 void CRenderer::MakeShadersDirty() 2086 2096 { 2087 2097 m->ShadersDirty = true; 2098 m_WaterManager->m_NeedsReloading = true; 2088 2099 } 2089 2100 2090 2101 CTextureManager& CRenderer::GetTextureManager() -
source/renderer/Renderer.h
85 85 OPT_SHADOWPCF, 86 86 OPT_PARTICLES, 87 87 OPT_PREFERGLSL, 88 OPT_FOG, 88 89 OPT_SILHOUETTES, 89 90 OPT_SHOWSKY, 90 91 OPT_SMOOTHLOS, … … 154 155 bool m_PreferGLSL; 155 156 bool m_ForceAlphaTest; 156 157 bool m_GPUSkinning; 158 bool m_Fog; 157 159 bool m_Silhouettes; 158 160 bool m_SmoothLOS; 159 161 bool m_ShowSky; -
source/renderer/scripting/JSInterface_Renderer.cpp
43 43 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFLECTION, WaterReflection); 44 44 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFRACTION, WaterRefraction); 45 45 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHADOWSONWATER, WaterShadows); 46 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(FOG, Fog); 46 47 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SILHOUETTES, Silhouettes); 47 48 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHOWSKY, ShowSky); 48 49 IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SMOOTHLOS, SmoothLOS); … … 86 87 REGISTER_BOOLEAN_SCRIPT_SETTING(WaterReflection); 87 88 REGISTER_BOOLEAN_SCRIPT_SETTING(WaterRefraction); 88 89 REGISTER_BOOLEAN_SCRIPT_SETTING(WaterShadows); 90 REGISTER_BOOLEAN_SCRIPT_SETTING(Fog); 89 91 REGISTER_BOOLEAN_SCRIPT_SETTING(Silhouettes); 90 92 REGISTER_BOOLEAN_SCRIPT_SETTING(ShowSky); 91 93 REGISTER_BOOLEAN_SCRIPT_SETTING(SmoothLOS); -
source/renderer/scripting/JSInterface_Renderer.h
41 41 DECLARE_BOOLEAN_SCRIPT_SETTING(WaterReflection); 42 42 DECLARE_BOOLEAN_SCRIPT_SETTING(WaterRefraction); 43 43 DECLARE_BOOLEAN_SCRIPT_SETTING(WaterShadows); 44 DECLARE_BOOLEAN_SCRIPT_SETTING(Fog); 44 45 DECLARE_BOOLEAN_SCRIPT_SETTING(Silhouettes); 45 46 DECLARE_BOOLEAN_SCRIPT_SETTING(ShowSky); 46 47 DECLARE_BOOLEAN_SCRIPT_SETTING(SmoothLOS);