diff --git a/enbseries.ini b/enbseries.ini index 4e9dc49..6a752a3 100644 --- a/enbseries.ini +++ b/enbseries.ini @@ -285,12 +285,12 @@ UseIndirectLighting=true ResolutionScale=0.5 SourceTexturesScale=0.5 SamplingQuality=2 -SamplingRange=0.15 -AOIntensity=2.5 -AOIntensityInterior=2.0 -AOAmount=1.5 -AOAmountInterior=1.2 -ILAmount=1.0 -ILAmountInterior=1.0 +SamplingRange=0.3 +AOIntensity=1.65 +AOIntensityInterior=1.35 +AOAmount=1.2 +AOAmountInterior=1.15 +ILAmount=2.4 +ILAmountInterior=2.6 AOMixingType=0 AOMixingTypeInterior=0 diff --git a/enbseries/enbbloom.fx b/enbseries/enbbloom.fx index f55118b..29d56cf 100644 --- a/enbseries/enbbloom.fx +++ b/enbseries/enbbloom.fx @@ -267,6 +267,11 @@ float bloommix6 string UIName = "Bloom Pass 6 Blend"; string UIWidget = "Spinner"; > = {1.0}; +float bloommixs +< + string UIName = "Bloom Single Pass Blend"; + string UIWidget = "Spinner"; +> = {1.0}; string str_bloomdirt = "Lens Dirt"; bool dirtenable < @@ -303,6 +308,11 @@ float dirtmix6 string UIName = "Dirt Pass 6 Blend"; string UIWidget = "Spinner"; > = {0.1}; +float dirtmixs +< + string UIName = "Dirt Single Pass Blend"; + string UIWidget = "Spinner"; +> = {1.0}; float ldirtpow < string UIName = "Dirt Contrast"; @@ -497,11 +507,8 @@ float4 PS_Downsize( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, as it just makes it so bright areas ONLY at the very middle of the screen produces sharp bright lines extending towards the sides. */ -float4 PS_Anamorphic( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, - uniform Texture2D intex, uniform float insz ) : SV_Target +float4 Anamorphic( float2 coord, Texture2D intex, float insz ) { - float2 coord = IN.txcoord0.xy; - if ( !alfenable ) return intex.Sample(Sampler,coord); float4 res = float4(0.0,0.0,0.0,0.0), base = RenderTargetRGBA64F.Sample(Sampler,coord); int i; @@ -522,11 +529,10 @@ float4 PS_Anamorphic( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, float fbl = tod_ind(fbl); float fpw = tod_ind(fpw); res.rgb = pow(res.rgb,fpw)*fbl; - res.a = 1.0; return res; } -/* Horizontal blur step goes here */ +/* blur step goes here */ float4 PS_HorizontalBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, uniform Texture2D intex, uniform float insz ) : SV_Target { @@ -542,7 +548,7 @@ float4 PS_HorizontalBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, sum += ((pp.x>=0.0)&&(pp.x<1.0))?gauss8[abs(i)]:0.0; } res *= 1.0/sum; - if ( alfenable ) res += TextureColor.Sample(Sampler,coord); + if ( alfenable ) res += Anamorphic(coord,intex,insz); res.a = 1.0; return res; } @@ -562,8 +568,8 @@ float4 PS_VerticalBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, [unroll] for ( i=-7; i<=7; i++ ) { pp = coord+float2(0.0,i*bloomradiusy)/insz; - res += gauss8[abs(i)]*TextureColor.Sample(Sampler,pp); - sum += ((pp.x>=0.0)&&(pp.x<1.0))?gauss8[abs(i)]:0.0; + res += gauss8[abs(i)]*intex.Sample(Sampler,pp); + sum += ((pp.y>=0.0)&&(pp.y<1.0))?gauss8[abs(i)]:0.0; } res *= 1.0/sum; float3 blu = tod_ind(blu); @@ -578,17 +584,22 @@ float4 PS_VerticalBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, } /* end pass, mix it all up */ -float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target +float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0, + uniform bool simple) : SV_Target { float2 coord = IN.txcoord0.xy; float4 res = float4(0.0,0.0,0.0,0.0); - res += bloommix1*RenderTarget1024.Sample(Sampler,coord); - res += bloommix2*RenderTarget512.Sample(Sampler,coord); - res += bloommix3*RenderTarget256.Sample(Sampler,coord); - res += bloommix4*RenderTarget128.Sample(Sampler,coord); - res += bloommix5*RenderTarget64.Sample(Sampler,coord); - res += bloommix6*RenderTarget32.Sample(Sampler,coord); - res.rgb /= 6.0; + if ( simple ) res += bloommixs*RenderTarget32.Sample(Sampler,coord); + else + { + res += bloommix1*RenderTarget1024.Sample(Sampler,coord); + res += bloommix2*RenderTarget512.Sample(Sampler,coord); + res += bloommix3*RenderTarget256.Sample(Sampler,coord); + res += bloommix4*RenderTarget128.Sample(Sampler,coord); + res += bloommix5*RenderTarget64.Sample(Sampler,coord); + res += bloommix6*RenderTarget32.Sample(Sampler,coord); + res.rgb /= 6.0; + } res.rgb = clamp(res.rgb,0.0,32768.0); res.a = 1.0; if ( !dirtenable ) return res; @@ -599,13 +610,17 @@ float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target ccoord.y = (coord.y-0.5)*ScreenSize.w+0.5; #endif float4 crap = TextureLens.Sample(SamplerLens,ccoord); - mud += dirtmix1*RenderTarget1024.Sample(Sampler,coord); - mud += dirtmix2*RenderTarget512.Sample(Sampler,coord); - mud += dirtmix3*RenderTarget256.Sample(Sampler,coord); - mud += dirtmix4*RenderTarget128.Sample(Sampler,coord); - mud += dirtmix5*RenderTarget64.Sample(Sampler,coord); - mud += dirtmix6*RenderTarget32.Sample(Sampler,coord); - mud.rgb /= 6.0; + if ( simple ) mud += dirtmixs*RenderTarget32.Sample(Sampler,coord); + else + { + mud += dirtmix1*RenderTarget1024.Sample(Sampler,coord); + mud += dirtmix2*RenderTarget512.Sample(Sampler,coord); + mud += dirtmix3*RenderTarget256.Sample(Sampler,coord); + mud += dirtmix4*RenderTarget128.Sample(Sampler,coord); + mud += dirtmix5*RenderTarget64.Sample(Sampler,coord); + mud += dirtmix6*RenderTarget32.Sample(Sampler,coord); + mud.rgb /= 6.0; + } mud.rgb = clamp(mud.rgb,0.0,32768.0); float mudmax = luminance(mud.rgb); float mudn = max(mudmax/(1.0+mudmax),0.0); @@ -616,7 +631,91 @@ float4 PS_PostPass( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target return res; } -technique11 BloomPass +technique11 BloomSimplePass +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_PrePass())); + } +} + +technique11 BloomSimplePass1 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTargetRGBA64F,0.0))); + } +} +technique11 BloomSimplePass2 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTarget1024,1024.0))); + } +} +technique11 BloomSimplePass3 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTarget512,512.0))); + } +} +technique11 BloomSimplePass4 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTarget256,256.0))); + } +} +technique11 BloomSimplePass5 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTarget128,128.0))); + } +} +technique11 BloomSimplePass6 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Downsize(RenderTarget64,64.0))); + } +} + +technique11 BloomSimplePass7 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget32,32.0))); + } +} +technique11 BloomSimplePass8 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,32.0,5.0))); + } +} + +technique11 BloomSimplePass9 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_PostPass(true))); + } +} + +technique11 BloomPass { pass p0 { @@ -675,14 +774,6 @@ technique11 BloomPass6 } technique11 BloomPass7 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget1024,1024.0))); - } -} -technique11 BloomPass8 { pass p0 { @@ -690,24 +781,16 @@ technique11 BloomPass8 SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget1024,1024.0))); } } -technique11 BloomPass9 +technique11 BloomPass8 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget1024,1024.0,0.0))); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,1024.0,0.0))); } } -technique11 BloomPass10 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget512,512.0))); - } -} -technique11 BloomPass11 +technique11 BloomPass9 { pass p0 { @@ -715,12 +798,29 @@ technique11 BloomPass11 SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget512,512.0))); } } -technique11 BloomPass12 +technique11 BloomPass10 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget512,512.0,1.0))); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,512.0,1.0))); + } +} + +technique11 BloomPass11 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget256,256.0))); + } +} +technique11 BloomPass12 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,256.0,2.0))); } } @@ -729,48 +829,49 @@ technique11 BloomPass13 pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget256,256.0))); + SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget128,128.0))); } } -technique11 BloomPass14 +technique11 BloomPass14 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget256,256.0))); - } -} -technique11 BloomPass15 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget256,256.0,2.0))); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,128.0,3.0))); } } -technique11 BloomPass16 +technique11 BloomPass15 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget128,128.0))); + SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget64,64.0))); } } +technique11 BloomPass16 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,64.0,4.0))); + } +} + technique11 BloomPass17 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget128,128.0))); + SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget32,32.0))); } } -technique11 BloomPass18 +technique11 BloomPass18 { pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget128,128.0,3.0))); + SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(TextureColor,32.0,5.0))); } } @@ -779,56 +880,6 @@ technique11 BloomPass19 pass p0 { SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget64,64.0))); - } -} -technique11 BloomPass20 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget64,64.0))); - } -} -technique11 BloomPass21 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget64,64.0,4.0))); - } -} - -technique11 BloomPass22 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_Anamorphic(RenderTarget32,32.0))); - } -} -technique11 BloomPass23 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_HorizontalBlur(RenderTarget32,32.0))); - } -} -technique11 BloomPass24 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_VerticalBlur(RenderTarget32,32.0,5.0))); - } -} - -technique11 BloomPass25 -{ - pass p0 - { - SetVertexShader(CompileShader(vs_5_0,VS_Quad())); - SetPixelShader(CompileShader(ps_5_0,PS_PostPass())); + SetPixelShader(CompileShader(ps_5_0,PS_PostPass(false))); } } diff --git a/enbseries/enbbloom.fx.ini b/enbseries/enbbloom.fx.ini index 78100fc..a8e3bbe 100644 --- a/enbseries/enbbloom.fx.ini +++ b/enbseries/enbbloom.fx.ini @@ -97,3 +97,5 @@ Dirt Contrast=0.85 Dirt Factor=2.33 Bloom Blur Radius X=1.92 Bloom Blur Radius Y=1.08 +Bloom Single Pass Blend=1.28 +Dirt Single Pass Blend=1.05 diff --git a/enbseries/enbdepthoffield.fx b/enbseries/enbdepthoffield.fx index 5a0608d..5e9c6e5 100644 --- a/enbseries/enbdepthoffield.fx +++ b/enbseries/enbdepthoffield.fx @@ -565,6 +565,17 @@ bool dofdisable string UIName = "Disable DOF"; string UIWidget = "Checkbox"; > = {false}; +float dofbfact +< + string UIName = "DOF Bilateral Factor"; + string UIWidget = "Spinner"; +> = {20.0}; +float dofbradius +< + string UIName = "DOF Bilateral Radius"; + string UIWidget = "Spinner"; + float UIMin = 0.0; +> = {1.0}; float dofpradius < string UIName = "DOF Gather Blur Radius"; @@ -1388,6 +1399,64 @@ float4 PS_DoFBlur( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target else return TextureColor.Sample(Sampler1,coord); } +/* simple gaussian / bilateral blur */ +float4 PS_DoFBlurH( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target +{ + float2 coord = IN.txcoord.xy; + if ( dofdisable ) return TextureColor.Sample(Sampler1,coord); + float dfc = RenderTargetR32F.Sample(Sampler1,coord).x; + if ( dofdebug ) return TextureDepth.Sample(Sampler1,coord).x; + if ( dfcdebug ) return dfc; + float bresl = (fixed.x>0)?fixed.x:ScreenSize.x; + float bof = (1.0/bresl)*dofbradius; + float4 res = float4(0,0,0,0); + if ( dfc <= dofminblur ) return TextureColor.Sample(Sampler1,coord); + int i; + float isd, sd, ds, sw, tw = 0; + isd = dfc; + [unroll] for ( i=-7; i<=7; i++ ) + { + sd = RenderTargetR32F.Sample(Sampler1,coord+float2(i,0)*bof + *dfc).x; + ds = abs(isd-sd)*dofbfact+0.5; + sw = 1.0/(ds+1.0); + sw *= gauss8[abs(i)]; + tw += sw; + res += sw*TextureColor.Sample(Sampler1,coord+float2(i,0)*bof + *dfc); + } + res /= tw; + return res; +} +float4 PS_DoFBlurV( VS_OUTPUT_POST IN, float4 v0 : SV_Position0 ) : SV_Target +{ + float2 coord = IN.txcoord.xy; + if ( dofdisable ) return TextureColor.Sample(Sampler1,coord); + float dfc = RenderTargetR32F.Sample(Sampler1,coord).x; + if ( dofdebug ) return TextureDepth.Sample(Sampler1,coord).x; + if ( dfcdebug ) return dfc; + float bresl = (fixed.y>0)?fixed.y:(ScreenSize.x*ScreenSize.w); + float bof = (1.0/bresl)*dofbradius; + float4 res = float4(0,0,0,0); + if ( dfc <= dofminblur ) return TextureColor.Sample(Sampler1,coord); + int i; + float isd, sd, ds, sw, tw = 0; + isd = dfc; + [unroll] for ( i=-7; i<=7; i++ ) + { + sd = RenderTargetR32F.Sample(Sampler1,coord+float2(0,i)*bof + *dfc).x; + ds = abs(isd-sd)*dofbfact+0.5; + sw = 1.0/(ds+1.0); + sw *= gauss8[abs(i)]; + tw += sw; + res += sw*TextureColor.Sample(Sampler1,coord+float2(0,i)*bof + *dfc); + } + res /= tw; + return res; +} + /* Screen frost shader. Not very realistic either, but looks fine too. */ float2 ScreenFrost( float2 coord ) { @@ -1489,7 +1558,88 @@ technique11 Focus } } -technique11 Prepass +technique11 PrepassNB +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_SSAOPre())); + } +} +technique11 PrepassNB1 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_SSAOBlurH())); + } +} +technique11 PrepassNB2 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_SSAOBlurV())); + } +} +technique11 PrepassNB3 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_DoFPrepass())); + } +} +technique11 PrepassNB4 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_SSAOApply())); + } +} +technique11 PrepassNB5 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Edge())); + } +} +technique11 PrepassNB6 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_Distortion())); + } +} +technique11 PrepassNB7 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_DoFBlurH())); + } +} +technique11 PrepassNB8 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_DoFBlurV())); + } +} +technique11 PrepassNB9 +{ + pass p0 + { + SetVertexShader(CompileShader(vs_5_0,VS_Quad())); + SetPixelShader(CompileShader(ps_5_0,PS_FrostPass())); + } +} + +technique11 Prepass { pass p0 { @@ -1561,5 +1711,3 @@ technique11 Prepass8 SetPixelShader(CompileShader(ps_5_0,PS_FrostPass())); } } - - diff --git a/enbseries/enbdepthoffield.fx.ini b/enbseries/enbdepthoffield.fx.ini index 3d27c67..3571861 100644 --- a/enbseries/enbdepthoffield.fx.ini +++ b/enbseries/enbdepthoffield.fx.ini @@ -6,13 +6,13 @@ Depth Cutoff=999998.0 Near Z=0.05 Far Z=3098.0 Distortion Chromatic Aberration=27.4 -Enable Underwater=true +Enable Underwater=false Underwater Frequency=2.36, 3.39, 2.72 Underwater Speed=24.3, 21.9, 26.5 Underwater Amplitude=0.1, 0.11, 0.07 Underwater Zoom=0.15 Always Underwater=false -Enable Hot Air Refraction=true +Enable Hot Air Refraction=false Heat Texture Size=6.4 Heat Speed=0.45 Heat Fade Contrast=235.0 @@ -22,7 +22,7 @@ Heat Intensity=0.6 Heat Contrast=0.95 Heat Time-of-day Contrast=0.5 Heat Always Enable=true -Enable Screen Frost=true +Enable Screen Frost=false Frost Contrast=1.1 Frost Strength=0.05 Frost Radial Contrast=0.8 @@ -182,3 +182,5 @@ Frost Factor Sunset=0.0 Frost Factor Dusk=0.0 Frost Factor Night=0.28 Frost Factor Interior=0.0 +DOF Bilateral Factor=20.0 +DOF Bilateral Radius=1.0 diff --git a/enbseries/enbeffect.fx.ini b/enbseries/enbeffect.fx.ini index e53bede..519063c 100644 --- a/enbseries/enbeffect.fx.ini +++ b/enbseries/enbeffect.fx.ini @@ -1,6 +1,6 @@ [ENBEFFECT.FX] TECHNIQUE=1 -Enable Grain=true +Enable Grain=false Grain Speed=2500.0 Grain Intensity=0.02 Grain Saturation=-0.23 diff --git a/enbseries/menblens.png b/enbseries/menblens.png index 34c0598..61f8955 100644 Binary files a/enbseries/menblens.png and b/enbseries/menblens.png differ