From 539dafc8d2b9a41e58d5308415c6ff9497b78d86 Mon Sep 17 00:00:00 2001 From: WoMspace Date: Mon, 16 Jan 2023 04:42:52 +0000 Subject: [PATCH] More jitter DOF stuff blur sky, and improve DOF a tiny bit, add a focus strength slider and focal point indicator. also tweaked the clouds a little --- shaders/composite2.fsh | 46 +++++++++++++++++++++++----- shaders/gbuffers_all_solid.vsh | 10 ++++-- shaders/gbuffers_all_translucent.vsh | 33 ++++++++++++-------- shaders/lib/settings.glsl | 1 + shaders/lib/stars.glsl | 2 +- shaders/lib/volumetricClouds.glsl | 12 ++++---- shaders/shaders.properties | 4 +-- 7 files changed, 76 insertions(+), 32 deletions(-) diff --git a/shaders/composite2.fsh b/shaders/composite2.fsh index 7b36d1f..a766196 100644 --- a/shaders/composite2.fsh +++ b/shaders/composite2.fsh @@ -6,7 +6,7 @@ const bool colortex5MipmapEnabled = true; // const bool colortex4MipmapEnabled = true; -\ + const bool shadowHardwareFiltering = true; flat varying vec4 lightCol; //main light source color (rgb),used light source(1=sun,-1=moon) flat varying vec3 ambientUp; @@ -20,7 +20,7 @@ flat varying vec3 WsunVec; flat varying vec2 TAA_Offset; flat varying float tempOffsets; - +uniform int hideGUI; /* const int colortex12Format = RGBA16F; //Final output, transparencies id (gbuffer->composite4) const int colortex11Format = RGBA16F; //Final output, transparencies id (gbuffer->composite4) @@ -151,6 +151,7 @@ vec3 viewToWorld(vec3 viewPosition) { #include "lib/volumetricClouds.glsl" #include "lib/waterBump.glsl" #include "lib/specular.glsl" +#include "lib/bokeh.glsl" // #include "/lib/climate_settings.glsl" @@ -805,7 +806,9 @@ void GriAndEminShadowFix( } } - +mat2 rotate(float angle){ + return mat2(cos(angle), -sin(angle), sin(angle), cos(angle)); +} //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// @@ -832,11 +835,29 @@ void main() { float z0 = texture2D(depthtex0,texcoord).x; float z = texture2D(depthtex1,texcoord).x; + vec3 fragpos = toScreenSpace(vec3(texcoord/RENDER_SCALE-vec2(tempOffset)*texelSize*0.5,z)); vec3 p3 = mat3(gbufferModelViewInverse) * fragpos; vec3 np3 = normVec(p3); p3 += gbufferModelViewInverse[3].xyz; + + #ifdef DOF_JITTER + vec2 jitter = jitter_offsets[1024 - (frameCounter % 1024)]; + jitter = rotate(frameTimeCounter) * jitter; + jitter.y *= aspectRatio; + jitter.xy *= 0.004 * JITTER_STRENGTH; + + vec3 fragpos_DOF = toScreenSpace(vec3((texcoord + jitter)/RENDER_SCALE-vec2(tempOffset)*texelSize*0.5,z)); + vec3 p3_DOF = mat3(gbufferModelViewInverse) * fragpos_DOF; + vec3 np3_DOF = normVec(p3_DOF); + p3_DOF += gbufferModelViewInverse[3].xyz; + #else + vec2 jitter = vec2(0.0); + vec3 p3_DOF = p3; + vec3 np3_DOF = np3; + #endif + float iswaterstuff = texture2D(colortex7,texcoord).a ; bool iswater = iswaterstuff > 0.99; vec4 SpecularTex = texture2D(colortex8,texcoord); @@ -889,22 +910,24 @@ void main() { vec3 color = vec3(0.0); - vec3 skyTEX = skyFromTex(np3,colortex4)/150. ; + vec3 skyTEX = skyFromTex(np3_DOF,colortex4)/150. ; float lightleakfix = clamp(eyeBrightness.y/240.0 + lightmap.y,0.0,1.0); if ( z >= 1.) { //sky - vec4 cloud = texture2D_bicubic(colortex0,texcoord*CLOUDS_QUALITY); + - color += stars(np3); + vec4 cloud = texture2D_bicubic(colortex0,(texcoord+jitter)*CLOUDS_QUALITY); + + color += stars(np3_DOF); #ifndef ambientLight_only // #ifdef Allow_Vanilla_sky // vec3 SkyTextured = toLinear(texture2D(colortex12,texcoord).rgb); // color += SkyTextured * (lightCol.a == 1 ? lightCol.rgb : 0.75 + blackbody2(Moon_temp)) * sqrt(luma(SkyTextured)); // #else - color += drawSun(dot(lightCol.a * WsunVec, np3),0, lightCol.rgb/150.,vec3(0.0)) ; // sun - color += drawSun(dot(lightCol.a * -WsunVec, np3),0, blackbody2(Moon_temp)/500.,vec3(0.0)); // moon + color += drawSun(dot(lightCol.a * WsunVec, np3_DOF),0, lightCol.rgb/150.,vec3(0.0)) ; // sun + color += drawSun(dot(lightCol.a * -WsunVec, np3_DOF),0, blackbody2(Moon_temp)/500.,vec3(0.0)); // moon // #endif #endif @@ -1210,5 +1233,12 @@ void main() { if (isEyeInWater == 0) waterVolumetrics(gl_FragData[0].rgb, fragpos0, fragpos, estimatedDepth, estimatedSunDepth, Vdiff, noise, totEpsilon, scatterCoef, ambientColVol, lightColVol, dot(np3, WsunVec)); } + + + #ifdef DOF_JITTER + if( hideGUI < 1.0) gl_FragData[0].rgb += vec3(0,25,0) * pow( clamp( 1.0-abs(DOF_JITTER_FOCUS-abs(fragpos.z)) ,0,1),25) ; + #endif + + /* RENDERTARGETS:3 */ } \ No newline at end of file diff --git a/shaders/gbuffers_all_solid.vsh b/shaders/gbuffers_all_solid.vsh index c71f997..3f684ef 100644 --- a/shaders/gbuffers_all_solid.vsh +++ b/shaders/gbuffers_all_solid.vsh @@ -1,4 +1,3 @@ -#extension GL_EXT_gpu_shader4 : enable #include "lib/settings.glsl" #include "/lib/res_params.glsl" #include "/lib/bokeh.glsl" @@ -136,6 +135,9 @@ vec3 blackbody2(float Temp) #define SEASONS_VSH #include "/lib/climate_settings.glsl" +mat2 rotate(float angle){ + return mat2(cos(angle), -sin(angle), sin(angle), cos(angle)); +} //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// @@ -266,7 +268,9 @@ void main() { #endif #ifdef DOF_JITTER - vec2 jitter = jitter_offsets[1024 - (frameCounter % 1024)]; + vec2 jitter = clamp(jitter_offsets[1024 - (frameCounter % 1024)] ,-1.0,1.0) ; + + jitter = rotate(frameTimeCounter) * jitter; jitter.y *= aspectRatio; float focus = DOF_JITTER_FOCUS; @@ -274,6 +278,6 @@ void main() { // float focus = texture2D(colortex4, coords).r; // focus = pow(far + 1.0, focus) - 1.0; float distanceToFocus = gl_Position.z - focus; - gl_Position.xy += jitter * distanceToFocus * 1e-2; + gl_Position.xy += (jitter * JITTER_STRENGTH) * distanceToFocus * 1e-2; #endif } diff --git a/shaders/gbuffers_all_translucent.vsh b/shaders/gbuffers_all_translucent.vsh index 0df2824..65e9507 100644 --- a/shaders/gbuffers_all_translucent.vsh +++ b/shaders/gbuffers_all_translucent.vsh @@ -36,6 +36,7 @@ varying vec4 tangent_other; flat varying vec4 lightCol; //main light source color (rgb),used light source(1=sun,-1=moon) uniform int frameCounter; +uniform float frameTimeCounter; uniform float far; uniform float aspectRatio; uniform float viewHeight; @@ -56,6 +57,9 @@ uniform int framemod8; vec4 toClipSpace3(vec3 viewSpacePosition) { return vec4(projMAD(gl_ProjectionMatrix, viewSpacePosition),-viewSpacePosition.z); } +mat2 rotate(float angle){ + return mat2(cos(angle), -sin(angle), sin(angle), cos(angle)); +} //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// //////////////////////////////VOID MAIN////////////////////////////// @@ -107,9 +111,25 @@ void main() { gl_Position.xy = gl_Position.xy * RENDER_SCALE + RENDER_SCALE * gl_Position.w - gl_Position.w; #endif #ifdef TAA - gl_Position.xy += offsets[framemod8] * gl_Position.w*texelSize; + gl_Position.xy += offsets[framemod8] * gl_Position.w*texelSize; #endif + #ifdef DOF_JITTER + vec2 jitter = clamp(jitter_offsets[1024 - (frameCounter % 1024)] ,-1.0,1.0) ; + + jitter = rotate(frameTimeCounter) * jitter; + jitter.y *= aspectRatio; + + float focus = DOF_JITTER_FOCUS; + // vec2 coords = vec2(8.0/viewWidth, 256.0/viewHeight); + // float focus = texture2D(colortex4, coords).r; + // focus = pow(far + 1.0, focus) - 1.0; + float distanceToFocus = gl_Position.z - focus; + gl_Position.xy += (jitter * JITTER_STRENGTH) * distanceToFocus * 1e-2; + #endif + + + vec3 sc = texelFetch2D(colortex4,ivec2(6,37),0).rgb; @@ -118,15 +138,4 @@ void main() { WsunVec = lightCol.a*normalize(mat3(gbufferModelViewInverse) *sunPosition); - #ifdef DOF_JITTER - vec2 jitter = jitter_offsets[1024 - (frameCounter % 1024)]; - jitter.y *= aspectRatio; - - float focus = DOF_JITTER_FOCUS; - // vec2 coords = vec2(8.0/viewWidth, 256.0/viewHeight); - // float focus = texture2D(colortex4, coords).r; - // focus = pow(far + 1.0, focus) - 1.0; - float distanceToFocus = gl_Position.z - focus; - gl_Position.xy += jitter * distanceToFocus * 1e-2; - #endif } diff --git a/shaders/lib/settings.glsl b/shaders/lib/settings.glsl index 80226b9..d369073 100644 --- a/shaders/lib/settings.glsl +++ b/shaders/lib/settings.glsl @@ -56,6 +56,7 @@ #define DoF_Adaptation_Speed 1.00 // [0.20 0.21 0.23 0.24 0.25 0.27 0.29 0.30 0.32 0.34 0.36 0.39 0.41 0.43 0.46 0.49 0.52 0.55 0.59 0.62 0.66 0.70 0.74 0.79 0.84 0.89 0.94 1.00 1.06 1.13 1.20 1.27 1.35 1.43 1.52 1.61 1.71 1.82 1.93 2.05 2.18 2.31 2.45 2.60 2.76 2.93 3.11 3.30 3.51 3.72 3.95 4.19 4.45 4.73 5.02 5.33 5.65 6.00] // #define DOF_JITTER #define DOF_JITTER_FOCUS 48.0 // [1.0 2.0 4.0 8.0 16.0 32.0 48.0 64.0 96.0 128.0 192.0 256.0] +#define JITTER_STRENGTH 1.0 // sorry [1.0 2.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 12.0 13.0 14.0 15.0 16.0 17.0 18.0 19.0 20.0] // --- TAA --- diff --git a/shaders/lib/stars.glsl b/shaders/lib/stars.glsl index c018c07..2552305 100644 --- a/shaders/lib/stars.glsl +++ b/shaders/lib/stars.glsl @@ -42,7 +42,7 @@ float StableStarField( in vec2 vSamplePos, float fThreshhold ) float stars(vec3 fragpos){ float elevation = clamp(fragpos.y,0.,1.); - vec2 uv = fragpos.xz/(1.5+elevation); + vec2 uv = fragpos.xz/(2.0+elevation); return StableStarField(uv*1500.,0.999)*0.5*(0.3-0.3*rainStrength); } diff --git a/shaders/lib/volumetricClouds.glsl b/shaders/lib/volumetricClouds.glsl index dcfb4c5..ed8ed6b 100644 --- a/shaders/lib/volumetricClouds.glsl +++ b/shaders/lib/volumetricClouds.glsl @@ -176,14 +176,14 @@ vec3 Cloud_lighting( float ambientShading = exp(-SkyShadowing * 50. + powder)*powder ; vec3 ambientLighting = SkyColors * ambientShading; - // if(cloudType == 1) ambientLighting = SkyColors * powder; vec3 sunLighting = exp(-SunShadowing)*sunContribution + exp(-SunShadowing * 0.2)*sunContributionMulti; sunLighting *= powder; - vec3 moonLighting = ( exp2(-MoonShadowing * 2.0 )*moonContribution + exp(-MoonShadowing * 0.2 )*moonContributionMulti ) * powder; + vec3 moonLighting = exp(-MoonShadowing)*moonContribution + exp(-MoonShadowing * 0.2)*moonContributionMulti; + moonLighting *= powder; - return ambientLighting + sunLighting ; + return ambientLighting + sunLighting + moonLighting; @@ -286,10 +286,10 @@ vec4 renderClouds( // float mieDay = mix(phaseg(SdotV,0.75), mieDayMulti,0.8)*3.14; float mieDayMulti = phaseg(SdotV, 0.35); - float mieDay = (phaseg(SdotV,0.75) + mieDayMulti)*2.0; + float mieDay = phaseg(SdotV,0.75) + mieDayMulti; - float mieNightMulti = phaseg(-SdotV, 0.35)*3.14; - float mieNight = mix(phaseg(-SdotV,0.9), mieNightMulti,0.5)*3.14; + float mieNightMulti = phaseg(-SdotV, 0.35); + float mieNight = phaseg(-SdotV,0.75) + mieNightMulti; vec3 sunContribution = mieDay*sunColor*3.14; vec3 sunContributionMulti = mieDayMulti*sunColor*3.14; diff --git a/shaders/shaders.properties b/shaders/shaders.properties index 1b67a51..ab48004 100644 --- a/shaders/shaders.properties +++ b/shaders/shaders.properties @@ -45,12 +45,12 @@ alphaTest.gbuffers_hand=true # profile.high = shadowMapResolution=2048 Sub_surface_scattering Variable_Penumbra_Shadows shadowDistance=69. VPS_Search_Samples=15 SHADOW_FILTER_SAMPLE_COUNT=15 SCREENSPACE_CONTACT_SHADOWS SSAO ambientOcclusionLevel=0.15 !TAA_UPSCALING RENDER_SCALE_X=0.7 RENDER_SCALE_Y=0.7 SHARPENING= 0.35 VOLUMETRIC_CLOUDS rain_clouds=1.0 cloudCoverage=0.36 cloud_LevelOfDetail=1 cloud_ShadowLevelOfDetail=0 CLOUDS_QUALITY=0.5 minRayMarchSteps=20 maxRayMarchSteps=30 High_Altitude_Clouds reflection_quality=35 Roughness_Strength=3 Screen_Space_Reflections Sky_reflection # profile.ultra = shadowMapResolution=4096 Sub_surface_scattering Variable_Penumbra_Shadows shadowDistance=80 VPS_Search_Samples=15 SHADOW_FILTER_SAMPLE_COUNT=25 SCREENSPACE_CONTACT_SHADOWS SSAO ambientOcclusionLevel=0.15 !TAA_UPSCALING RENDER_SCALE_X=0.7 RENDER_SCALE_Y=0.7 SHARPENING= 0.2 VOLUMETRIC_CLOUDS rain_clouds=1.0 cloudCoverage=0.36 cloud_LevelOfDetail=2 cloud_ShadowLevelOfDetail=2 CLOUDS_QUALITY=0.5 minRayMarchSteps=20 maxRayMarchSteps=50 High_Altitude_Clouds reflection_quality=35 Roughness_Strength=3 Screen_Space_Reflections Sky_reflection -sliders = WeatherDay Summer_Leaf_R Summer_Leaf_G Summer_Leaf_B Fall_Leaf_R Fall_Leaf_G Fall_Leaf_B Winter_Leaf_R Winter_Leaf_G Winter_Leaf_B Spring_Leaf_R Spring_Leaf_G Spring_Leaf_B Summer_R Summer_G Summer_B Fall_R Fall_G Fall_B Winter_R Winter_G Winter_B Spring_R Spring_G Spring_B Season_Length CaveFogFallOff CaveFogColor_R CaveFogColor_G CaveFogColor_B indirect_effect GI_Strength Cloud_Height Dynamic_sky_day ambient_brightness AmbientLight_R AmbientLight_G AmbientLight_B cloud_speed Rain_coverage override_R override_G override_B override_Cloudy_Fog_Density override_cloudyfog_fade override_fog override_Uniform_Fog_Density override_uniformfog_fade override_Bloomy_Fog override_Sun_Strength Moon_temp Haze_amount UniformFog_amount CloudyFog_amount TimeOfDayFog_multiplier RainFog_amount CaveFog_amount uniformfog_fade cloudyfog_fade cloudray_amount Swamp_cloudyfog_height Jungle_cloudyfog_fade Swamp_uniformfog_height Jungle_uniformfog_fade noise_mode Distant_shadow_quality ambient_temp Sun_temp Puddle_Size Cloud_Size LabSSS_Curve Emissive_Curve Emissive_Brightness AO_Strength Swamp_Sun_Strength Jungle_Sun_Strength Swamp_Bloomy_Fog Jungle_Bloomy_Fog Swamp_Mie Jungle_Mie Swamp_cloudyfog_Density Jungle_Cloudy_Fog_Density Swamp_UniformFog_Density Jungle_Uniform_Fog_Density Swamp_Bloomy_Fog Jungle_Bloomy_Fog Swamp_Mie Jungle_Mie Swamp_R Swamp_G Swamp_B Jungle_R Jungle_G Jungle_B Jungle_fog_strength Swamp_fog_strength Lush_fog_strength Snells_Window_Width self_shadow_samples Shadow_brightness Cloud_top_cutoff Cloud_base_cutoff Cloud_fade_amount BLOOMY_FOG FOG_RAIN_MULTIPLIER FOG_TOD_MULTIPLIER CLOUDY_FOG_AMOUNT BASE_FOG_AMOUNT WAVY_SPEED WAVY_STRENGTH ANTI_GHOSTING BLOOM_STRENGTH shadowDistance shadowDistanceRenderMul FinalR FinalG FinalB Ambient_Mult Sky_Brightness fog_coefficientMieR fog_coefficientMieG fog_coefficientMieB sun_illuminance sunColorG sunColorB sunColorR sky_mieg sky_coefficientMieB sky_coefficientMieG sky_coefficientMieR sky_coefficientRayleighB sky_coefficientRayleighG sky_coefficientRayleighR CLOUDS_QUALITY EXPOSURE_MULTIPLIER MIN_LIGHT_AMOUNT TORCH_R TORCH_G TORCH_B TORCH_AMOUNT shadowMapResolution sunPathRotation SKY_BRIGHTNESS_DAY SKY_BRIGHTNESS_NIGHT BLEND_FACTOR FLICKER_REDUCTION MOTION_REJECTION VL_SAMPLES Exposure_Speed POM_MAP_RES POM_DEPTH MAX_ITERATIONS MAX_DIST SSR_STEPS ambientOcclusionLevel SEA_LEVEL ATMOSPHERIC_DENSITY CLOUDS_SHADOWS_STRENGTH moon_illuminance moonColorR moonColorG moonColorB fog_mieg1 fog_mieg2 fog_coefficientRayleighR fog_coefficientRayleighG SATURATION Manual_exposure_value focal aperture MANUAL_FOCUS SHADOW_FILTER_SAMPLE_COUNT Max_Filter_Depth VPS_Search_Samples Min_Shadow_Filter_Radius Max_Shadow_Filter_Radius SSAO_SAMPLES Water_Top_Layer fog_coefficientRayleighB SHARPENING rayMarchSampleCount Dirt_Mie_Phase Dirt_Amount Dirt_Scatter_R Dirt_Scatter_G Dirt_Scatter_B Dirt_Absorb_R Dirt_Absorb_G Dirt_Absorb_B Water_Absorb_R Water_Absorb_G Water_Absorb_B Purkinje_strength Purkinje_strength Purkinje_R Purkinje_G Purkinje_B Texture_MipMap_Bias DoF_Adaptation_Speed Purkinje_Multiplier CROSSTALK RENDER_SCALE_X RENDER_SCALE_Y VL_RENDER_RESOLUTION BLOOM_QUALITY VL_RENDER_RESOLUTION RAY_COUNT STEPS STEP_LENGTH cloud_LevelOfDetail cloud_ShadowLevelOfDetail cloud_LevelOfDetailLQ cloud_ShadowLevelOfDetailLQ minRayMarchSteps maxRayMarchSteps minRayMarchStepsLQ maxRayMarchStepsLQ cloudDensity cloudCoverage fbmAmount fbmPower1 fbmPower2 cloudMieG cloudMieG2 cloudMie2Multiplier Strong_SSS_strength Medium_SSS_strength Weak_SSS_strength Shadow_brightness Roughness_Threshold Sun_specular_Strength reflection_quality Roughness_Strength SSS_mode DOF_QUALITY DOF_ANAMORPHIC_RATIO AEROCHROME_PINKNESS DOF_JITTER_FOCUS +sliders = JITTER_STRENGTH WeatherDay Summer_Leaf_R Summer_Leaf_G Summer_Leaf_B Fall_Leaf_R Fall_Leaf_G Fall_Leaf_B Winter_Leaf_R Winter_Leaf_G Winter_Leaf_B Spring_Leaf_R Spring_Leaf_G Spring_Leaf_B Summer_R Summer_G Summer_B Fall_R Fall_G Fall_B Winter_R Winter_G Winter_B Spring_R Spring_G Spring_B Season_Length CaveFogFallOff CaveFogColor_R CaveFogColor_G CaveFogColor_B indirect_effect GI_Strength Cloud_Height Dynamic_sky_day ambient_brightness AmbientLight_R AmbientLight_G AmbientLight_B cloud_speed Rain_coverage override_R override_G override_B override_Cloudy_Fog_Density override_cloudyfog_fade override_fog override_Uniform_Fog_Density override_uniformfog_fade override_Bloomy_Fog override_Sun_Strength Moon_temp Haze_amount UniformFog_amount CloudyFog_amount TimeOfDayFog_multiplier RainFog_amount CaveFog_amount uniformfog_fade cloudyfog_fade cloudray_amount Swamp_cloudyfog_height Jungle_cloudyfog_fade Swamp_uniformfog_height Jungle_uniformfog_fade noise_mode Distant_shadow_quality ambient_temp Sun_temp Puddle_Size Cloud_Size LabSSS_Curve Emissive_Curve Emissive_Brightness AO_Strength Swamp_Sun_Strength Jungle_Sun_Strength Swamp_Bloomy_Fog Jungle_Bloomy_Fog Swamp_Mie Jungle_Mie Swamp_cloudyfog_Density Jungle_Cloudy_Fog_Density Swamp_UniformFog_Density Jungle_Uniform_Fog_Density Swamp_Bloomy_Fog Jungle_Bloomy_Fog Swamp_Mie Jungle_Mie Swamp_R Swamp_G Swamp_B Jungle_R Jungle_G Jungle_B Jungle_fog_strength Swamp_fog_strength Lush_fog_strength Snells_Window_Width self_shadow_samples Shadow_brightness Cloud_top_cutoff Cloud_base_cutoff Cloud_fade_amount BLOOMY_FOG FOG_RAIN_MULTIPLIER FOG_TOD_MULTIPLIER CLOUDY_FOG_AMOUNT BASE_FOG_AMOUNT WAVY_SPEED WAVY_STRENGTH ANTI_GHOSTING BLOOM_STRENGTH shadowDistance shadowDistanceRenderMul FinalR FinalG FinalB Ambient_Mult Sky_Brightness fog_coefficientMieR fog_coefficientMieG fog_coefficientMieB sun_illuminance sunColorG sunColorB sunColorR sky_mieg sky_coefficientMieB sky_coefficientMieG sky_coefficientMieR sky_coefficientRayleighB sky_coefficientRayleighG sky_coefficientRayleighR CLOUDS_QUALITY EXPOSURE_MULTIPLIER MIN_LIGHT_AMOUNT TORCH_R TORCH_G TORCH_B TORCH_AMOUNT shadowMapResolution sunPathRotation SKY_BRIGHTNESS_DAY SKY_BRIGHTNESS_NIGHT BLEND_FACTOR FLICKER_REDUCTION MOTION_REJECTION VL_SAMPLES Exposure_Speed POM_MAP_RES POM_DEPTH MAX_ITERATIONS MAX_DIST SSR_STEPS ambientOcclusionLevel SEA_LEVEL ATMOSPHERIC_DENSITY CLOUDS_SHADOWS_STRENGTH moon_illuminance moonColorR moonColorG moonColorB fog_mieg1 fog_mieg2 fog_coefficientRayleighR fog_coefficientRayleighG SATURATION Manual_exposure_value focal aperture MANUAL_FOCUS SHADOW_FILTER_SAMPLE_COUNT Max_Filter_Depth VPS_Search_Samples Min_Shadow_Filter_Radius Max_Shadow_Filter_Radius SSAO_SAMPLES Water_Top_Layer fog_coefficientRayleighB SHARPENING rayMarchSampleCount Dirt_Mie_Phase Dirt_Amount Dirt_Scatter_R Dirt_Scatter_G Dirt_Scatter_B Dirt_Absorb_R Dirt_Absorb_G Dirt_Absorb_B Water_Absorb_R Water_Absorb_G Water_Absorb_B Purkinje_strength Purkinje_strength Purkinje_R Purkinje_G Purkinje_B Texture_MipMap_Bias DoF_Adaptation_Speed Purkinje_Multiplier CROSSTALK RENDER_SCALE_X RENDER_SCALE_Y VL_RENDER_RESOLUTION BLOOM_QUALITY VL_RENDER_RESOLUTION RAY_COUNT STEPS STEP_LENGTH cloud_LevelOfDetail cloud_ShadowLevelOfDetail cloud_LevelOfDetailLQ cloud_ShadowLevelOfDetailLQ minRayMarchSteps maxRayMarchSteps minRayMarchStepsLQ maxRayMarchStepsLQ cloudDensity cloudCoverage fbmAmount fbmPower1 fbmPower2 cloudMieG cloudMieG2 cloudMie2Multiplier Strong_SSS_strength Medium_SSS_strength Weak_SSS_strength Shadow_brightness Roughness_Threshold Sun_specular_Strength reflection_quality Roughness_Strength SSS_mode DOF_QUALITY DOF_ANAMORPHIC_RATIO AEROCHROME_PINKNESS DOF_JITTER_FOCUS # screen=[Atmospherics] [TAA_OPTIONS] [Lighting] [Camera] [Shading] [Wavy_stuff] [Water_and_transparencies] [Xonk_settings] screen.columns=1 -screen = [Direct_Light] [Ambient_light] [World] [Atmospherics] [Post_Processing] [Climate] [Misc_Settings] DOF_JITTER DOF_JITTER_FOCUS +screen = [Direct_Light] [Ambient_light] [World] [Atmospherics] [Post_Processing] [Climate] [Misc_Settings] DOF_JITTER DOF_JITTER_FOCUS JITTER_STRENGTH ######## LIGHTING ### DIRECT LIGHT