1
Fork 0

MariENB Skyrim 2.2.0

This commit is contained in:
Marisa the Magician 2019-04-07 17:41:42 +02:00
commit 539036c7e2
13 changed files with 258 additions and 343 deletions

View file

@ -85,8 +85,8 @@ ILAmountInterior=1.38
AOIntensity=1.17
AOIntensityInterior=1.21
AOType=0
AOMixingType=2
AOMixingTypeInterior=2
AOMixingType=0
AOMixingTypeInterior=0
UseOldType=false
EnableDenoiser=true
EnableSupersampling=false
@ -109,7 +109,7 @@ AdaptationMax=1.25
[ENVIRONMENT]
DirectLightingIntensityDay=1.35
DirectLightingIntensityNight=1.27
DirectLightingIntensityNight=1.35
DirectLightingIntensityInterior=1.014688
DirectLightingCurveDay=1.35
DirectLightingCurveNight=1.27
@ -136,10 +136,10 @@ AmbientLightingDesaturationDay=0.0
AmbientLightingDesaturationNight=0.0
AmbientLightingDesaturationInterior=0.0
PointLightingIntensityDay=1.08
PointLightingIntensityNight=1.17
PointLightingIntensityNight=1.18
PointLightingIntensityInterior=0.825
PointLightingCurveDay=1.03875
PointLightingCurveNight=1.17
PointLightingCurveDay=1.27
PointLightingCurveNight=1.33
PointLightingCurveInterior=0.825
PointLightingDesaturationDay=0.0
PointLightingDesaturationNight=0.0
@ -156,23 +156,23 @@ ColorPowInterior=0.9
DirectLightingIntensitySunrise=1.31
DirectLightingIntensitySunset=1.39
DirectLightingIntensityInteriorDay=1.32
DirectLightingIntensityInteriorNight=1.14
DirectLightingIntensityInteriorNight=1.29
DirectLightingCurveSunrise=1.31
DirectLightingCurveSunset=1.39
DirectLightingCurveInteriorDay=1.38
DirectLightingCurveInteriorNight=1.45
DirectLightingCurveInteriorNight=1.49
DirectLightingDesaturationSunrise=0.12
DirectLightingDesaturationSunset=0.12
DirectLightingDesaturationInteriorDay=0.11
DirectLightingDesaturationInteriorNight=0.18
SpecularAmountMultiplierSunrise=1.83
SpecularAmountMultiplierSunset=1.87
SpecularAmountMultiplierInteriorDay=1.84
SpecularAmountMultiplierInteriorDay=1.85
SpecularAmountMultiplierInteriorNight=1.93
SpecularPowerMultiplierSunrise=0.631
SpecularPowerMultiplierSunset=0.661
SpecularPowerMultiplierInteriorDay=0.711
SpecularPowerMultiplierInteriorNight=0.611
SpecularPowerMultiplierInteriorDay=0.811
SpecularPowerMultiplierInteriorNight=0.651
SpecularFromLightSunrise=0.0
SpecularFromLightSunset=0.0
SpecularFromLightInteriorDay=0.0
@ -217,23 +217,23 @@ PointLightingIntensitySunrise=1.14
PointLightingIntensitySunset=1.18
PointLightingIntensityInteriorDay=1.1
PointLightingIntensityInteriorNight=1.13
PointLightingCurveSunrise=1.16
PointLightingCurveSunset=1.2
PointLightingCurveInteriorDay=1.11
PointLightingCurveInteriorNight=1.11
PointLightingCurveSunrise=1.35
PointLightingCurveSunset=1.37
PointLightingCurveInteriorDay=1.27
PointLightingCurveInteriorNight=1.33
PointLightingDesaturationSunrise=0.0
PointLightingDesaturationSunset=0.0
PointLightingDesaturationInteriorDay=0.0
PointLightingDesaturationInteriorNight=0.0
ParticleLightsIntensitySunrise=0.25
ParticleLightsIntensityDay=0.21
ParticleLightsIntensitySunset=0.23
ParticleLightsIntensityNight=0.35
ParticleLightsIntensityInteriorDay=0.26
ParticleLightsIntensityInteriorNight=0.38
ParticleLightsIntensitySunrise=0.63
ParticleLightsIntensityDay=0.61
ParticleLightsIntensitySunset=0.63
ParticleLightsIntensityNight=0.65
ParticleLightsIntensityInteriorDay=0.6
ParticleLightsIntensityInteriorNight=0.68
FogColorMultiplierSunrise=0.39
FogColorMultiplierSunset=0.35
FogColorMultiplierInteriorDay=0.76
FogColorMultiplierInteriorDay=0.79
FogColorMultiplierInteriorNight=0.15
FogColorCurveSunrise=1.04
FogColorCurveSunset=1.06
@ -300,12 +300,12 @@ AmbientColorFilterBottomDawn=0, 0, 0
AmbientColorFilterBottomDusk=0, 0, 0
PointLightingIntensityDawn=1.21
PointLightingIntensityDusk=1.22
PointLightingCurveDawn=1.18
PointLightingCurveDusk=1.24
PointLightingCurveDawn=1.44
PointLightingCurveDusk=1.4
PointLightingDesaturationDawn=0.0
PointLightingDesaturationDusk=0.0
ParticleLightsIntensityDawn=0.33
ParticleLightsIntensityDusk=0.34
ParticleLightsIntensityDawn=0.66
ParticleLightsIntensityDusk=0.64
FogColorMultiplierDawn=0.31
FogColorMultiplierDusk=0.23
FogColorCurveDawn=1.08
@ -334,7 +334,7 @@ CloudsDesaturationNight=0.0
CloudsDesaturationInterior=0.14
CloudsEdgeClamp=0.36
CloudsEdgeIntensity=1.39
GradientIntensityDay=1.080001
GradientIntensityDay=1.050001
GradientIntensityNight=0.510001
GradientIntensityInterior=0.85
GradientDesaturationDay=0.14
@ -346,10 +346,10 @@ GradientTopIntensityInterior=5.6125
GradientTopCurveDay=1.19
GradientTopCurveNight=1.91
GradientTopCurveInterior=2.15
GradientMiddleIntensityDay=1.190001
GradientMiddleIntensityDay=1.120001
GradientMiddleIntensityNight=0.700001
GradientMiddleIntensityInterior=2.4
GradientMiddleCurveDay=1.16
GradientMiddleCurveDay=1.24
GradientMiddleCurveNight=1.64
GradientMiddleCurveInterior=1.65
GradientHorizonIntensityDay=0.98
@ -561,7 +561,7 @@ SpecularAmountMultiplierSunrise=1.83
SpecularAmountMultiplierDay=1.78
SpecularAmountMultiplierSunset=1.87
SpecularAmountMultiplierNight=1.97
SpecularAmountMultiplierInteriorDay=1.25
SpecularAmountMultiplierInteriorDay=1.26
SpecularAmountMultiplierInteriorNight=1.41
SpecularPowerMultiplierSunrise=2.25
SpecularPowerMultiplierDay=2.28
@ -812,8 +812,8 @@ EnableSupersampling=false
ExteriorEnable=true
InteriorEnable=true
IgnoreWeatherSystem=true
AmountInterior=0.81
PowerInterior=1.11
AmountInterior=0.97
PowerInterior=1.1
[IMAGEBASEDLIGHTING]
AdditiveAmountSunrise=0.02

1
enbseries/VERSION Normal file
View file

@ -0,0 +1 @@
2.2.0-1 "Waifus And Lore"

View file

@ -10,9 +10,9 @@ CGA Palette=1
EGA Palette=0
Dithering Pattern=4
Contrast Modifier=0.75
Saturation Modifier=1.5
Dither Offset=-0.2
Dither Range=0.3
Saturation Modifier=1.25
Dither Offset=-0.1
Dither Range=0.2
Enable ASCII=false
ASCII Monochrome=false
ASCII Blend=0.0
@ -20,7 +20,7 @@ Enable Chroma Key=false
Chroma Key Red=1.0
Chroma Key Green=0.0
Chroma Key Blue=0.8
Chroma Key Depth=0.99
Chroma Key Depth=0.9
Enable Dot Matrix=false
Dot Size=1
Dot Blend=0.3
@ -64,3 +64,7 @@ Grain Intensity=0.004
Grain Saturation Shadow=1.0
Grain Intensity Shadow=0.001
Shadow Noise Curve=0.095
Chroma Key Depth Horizontal Tilt Center=0.5
Chroma Key Depth Vertical Tilt Center=0.5
Chroma Key Depth Horizontal Tilt=0.0
Chroma Key Depth Vertical Tilt=0.0

View file

@ -1,21 +1,21 @@
[ENBBLOOM.FX]
TECHNIQUE=0
Bloom Intensity Night=0.63
Bloom Intensity Day=0.61
Bloom Intensity Interior Night=0.65
Bloom Intensity Interior Day=0.63
Bloom Contrast Night=1.0
Bloom Contrast Day=1.0
Bloom Contrast Interior Night=1.0
Bloom Contrast Interior Day=1.0
Bloom Saturation Night=0.98
Bloom Saturation Day=0.96
Bloom Saturation Interior Night=0.98
Bloom Saturation Interior Day=0.97
Bloom Offset Night=-0.09
Bloom Offset Day=-0.18
Bloom Offset Interior Night=-0.07
Bloom Offset Interior Day=-0.13
Bloom Intensity Night=0.7
Bloom Intensity Day=0.64
Bloom Intensity Interior Night=0.72
Bloom Intensity Interior Day=0.66
Bloom Contrast Night=0.92
Bloom Contrast Day=0.96
Bloom Contrast Interior Night=0.9
Bloom Contrast Interior Day=0.94
Bloom Saturation Night=1.11
Bloom Saturation Day=1.07
Bloom Saturation Interior Night=1.16
Bloom Saturation Interior Day=1.12
Bloom Offset Night=-0.12
Bloom Offset Day=-0.17
Bloom Offset Interior Night=-0.11
Bloom Offset Interior Day=-0.14
Bloom Intensity Cap Night=20.0
Bloom Intensity Cap Day=20.0
Bloom Intensity Cap Interior Night=20.0
@ -35,15 +35,15 @@ Blue Shift Interior Day Green=0.32
Blue Shift Interior Day Blue=1.39
Blue Shift Intensity Night=0.32
Blue Shift Intensity Day=0.45
Blue Shift Intensity Interior Night=0.38
Blue Shift Intensity Interior Day=0.43
Blue Shift Intensity Interior Night=0.49
Blue Shift Intensity Interior Day=0.65
Blue Shift Luminance Factor Per-pass=0.41
Blue Shift Color Factor Per-pass=0.92
Enable Anamorphic Bloom=true
Anamorphic Bloom Blend Night=0.52
Anamorphic Bloom Blend Day=0.59
Anamorphic Bloom Blend Interior Night=0.48
Anamorphic Bloom Blend Interior Day=0.54
Anamorphic Bloom Blend Night=0.59
Anamorphic Bloom Blend Day=0.56
Anamorphic Bloom Blend Interior Night=0.62
Anamorphic Bloom Blend Interior Day=0.56
Anamorphic Bloom Blue Shift Night Red=-0.39
Anamorphic Bloom Blue Shift Night Green=-0.68
Anamorphic Bloom Blue Shift Night Blue=1.39
@ -56,21 +56,21 @@ Anamorphic Bloom Blue Shift Interior Night Blue=1.54
Anamorphic Bloom Blue Shift Interior Day Red=-0.88
Anamorphic Bloom Blue Shift Interior Day Green=0.17
Anamorphic Bloom Blue Shift Interior Day Blue=1.65
Anamorphic Bloom Blue Shift Intensity Night=1.33
Anamorphic Bloom Blue Shift Intensity Day=1.2
Anamorphic Bloom Blue Shift Interior Night=1.52
Anamorphic Bloom Blue Shift Interior Day=1.35
Anamorphic Bloom Contrast Night=1.13
Anamorphic Bloom Contrast Day=1.19
Anamorphic Bloom Contrast Interior Night=1.2
Anamorphic Bloom Contrast Interior Day=1.25
Anamorphic Bloom Blue Shift Intensity Night=1.59
Anamorphic Bloom Blue Shift Intensity Day=1.49
Anamorphic Bloom Blue Shift Interior Night=1.65
Anamorphic Bloom Blue Shift Interior Day=1.55
Anamorphic Bloom Contrast Night=1.16
Anamorphic Bloom Contrast Day=1.21
Anamorphic Bloom Contrast Interior Night=1.15
Anamorphic Bloom Contrast Interior Day=1.17
Anamorphic Bloom Radius Multiplier=4.0
Bloom Pass 1 Blend=0.97
Bloom Pass 2 Blend=0.86
Bloom Pass 3 Blend=0.79
Bloom Pass 4 Blend=0.63
Bloom Pass 7 Blend=0.49
Bloom Pass 8 Blend=0.34
Bloom Pass 1 Blend=0.95
Bloom Pass 2 Blend=0.81
Bloom Pass 3 Blend=0.68
Bloom Pass 4 Blend=0.54
Bloom Pass 7 Blend=0.42
Bloom Pass 8 Blend=0.28
Bloom Prepass Blend=0.0
Bloom Base Blend=0.0
Enable Lens Dirt=false
@ -78,13 +78,13 @@ Dirt Pass 1 Blend=0.02
Dirt Pass 2 Blend=0.05
Dirt Pass 3 Blend=0.13
Dirt Pass 4 Blend=0.25
Dirt Pass 7 Blend=1.15
Dirt Pass 8 Blend=3.28
Dirt Pass 7 Blend=0.76
Dirt Pass 8 Blend=4.28
Dirt Prepass Blend=0.0
Dirt Base Blend=0.0
Dirt Texture Preserve Aspect=true
Dirt Contrast=0.88
Dirt Factor=0.74
Dirt Contrast=0.8
Dirt Factor=0.91
------Options & Settings----=false
Bloom Quality=0.0
------Depth-----------------=false
@ -156,4 +156,4 @@ Noise Intensity Exterior=0.003
Noise Intensity Interior=0.002
Bloom Blur Radius X=1.0
Bloom Blur Radius Y=1.0
Dirt Saturation=0.46
Dirt Saturation=0.45

View file

@ -19,12 +19,12 @@ Grain Pass 2 Magnification 2=0.1
Grain Pass 2 Magnification 3=0.18
Grain Contrast=2.54
Enable Adaptation=true
Adaptation Min Night=0.63
Adaptation Min Day=0.92
Adaptation Min Interior Night=0.62
Adaptation Min Interior Day=0.67
Adaptation Min Night=1.04
Adaptation Min Day=1.08
Adaptation Min Interior Night=1.01
Adaptation Min Interior Day=1.08
Adaptation Max Night=1.49
Adaptation Max Day=1.67
Adaptation Max Day=1.69
Adaptation Max Interior Night=1.35
Adaptation Max Interior Day=1.64
Enable Tonemapping=true
@ -35,23 +35,23 @@ Tonemap Shoulder Strength Interior Day=0.43
Tonemap Linear Strength Night=1.32
Tonemap Linear Strength Day=1.34
Tonemap Linear Strength Interior Night=1.37
Tonemap Linear Strength Interior Day=1.3
Tonemap Linear Strength Interior Day=1.28
Tonemap Linear Angle Night=0.2
Tonemap Linear Angle Day=0.31
Tonemap Linear Angle Interior Night=0.14
Tonemap Linear Angle Interior Day=0.19
Tonemap Linear Angle Interior Day=0.2
Tonemap Toe Strength Night=1.27
Tonemap Toe Strength Day=1.28
Tonemap Toe Strength Interior Night=1.26
Tonemap Toe Strength Interior Day=1.36
Tonemap Toe Strength Interior Day=1.38
Tonemap Toe Numerator Night=3.63
Tonemap Toe Numerator Day=3.35
Tonemap Toe Numerator Interior Night=3.58
Tonemap Toe Numerator Interior Day=3.1
Tonemap Toe Numerator Interior Day=3.19
Tonemap Toe Denominator Night=0.99
Tonemap Toe Denominator Day=0.9
Tonemap Toe Denominator Interior Night=1.05
Tonemap Toe Denominator Interior Day=0.93
Tonemap Toe Denominator Interior Day=1.04
Tonemap Linear White Night=4.72
Tonemap Linear White Day=4.9
Tonemap Linear White Interior Night=4.85
@ -115,12 +115,12 @@ Grading Color Factor Interior Day=-0.04
Enable HSV Grading=true
Grading Saturation Intensity Night=1.05
Grading Saturation Intensity Day=1.07
Grading Saturation Intensity Interior Night=1.05
Grading Saturation Intensity Interior Day=1.07
Grading Saturation Intensity Interior Night=1.06
Grading Saturation Intensity Interior Day=1.09
Grading Saturation Contrast Night=1.01
Grading Saturation Contrast Day=1.04
Grading Saturation Contrast Interior Night=1.04
Grading Saturation Contrast Interior Day=1.09
Grading Saturation Contrast Interior Night=1.0
Grading Saturation Contrast Interior Day=1.02
Grading Value Intensity Night=1.09
Grading Value Intensity Day=1.06
Grading Value Intensity Interior Night=1.07
@ -139,8 +139,8 @@ Fade Before Film Filters=false
Enable LUT Grading=true
LUT Blend Night=0.37
LUT Blend Day=0.47
LUT Blend Interior Night=0.22
LUT Blend Interior Day=0.28
LUT Blend Interior Night=0.31
LUT Blend Interior Day=0.41
LUT Preset=61
Enable ENB Palette=false
Palette Blend=1.0

View file

@ -1,5 +1,5 @@
[ENBEFFECTPREPASS.FX]
TECHNIQUE=2
TECHNIQUE=0
Fixed Resolution Width=1920
Fixed Resolution Height=1080
Depth Cutoff=999998.0
@ -48,14 +48,14 @@ DOF Intensity Night=475.899994
DOF Intensity Day=424.299988
DOF Intensity Interior Night=480.799988
DOF Intensity Interior Day=432.299988
DOF Contrast Night=3.32
DOF Contrast Day=3.7
DOF Contrast Interior Night=3.02
DOF Contrast Interior Day=3.43
DOF Shift Night=0.0
DOF Shift Day=0.0
DOF Shift Interior Night=0.0
DOF Shift Interior Day=0.0
DOF Contrast Night=3.46
DOF Contrast Day=3.84
DOF Contrast Interior Night=3.2
DOF Contrast Interior Day=3.5
DOF Shift Night=-0.1
DOF Shift Day=-0.15
DOF Shift Interior Night=-0.05
DOF Shift Interior Day=-0.1
DOF Fixed Focus Intensity Night=1.0
DOF Fixed Focus Intensity Day=1.0
DOF Fixed Focus Intensity Interior Night=1.0
@ -147,7 +147,7 @@ SSAO Intensity=1.25
SSAO Contrast=0.65
SSAO Blending=0.8
SSAO Blur=true
SSAO Bilateral Factor=500.0
SSAO Bilateral Factor=250.0
SSAO Range=20.0
SSAO Blur Radius=1.0
Debug SSAO=false
@ -180,7 +180,7 @@ SSAO Blur Use Less Samples=true
Bokeh Threshold=1.0
Bokeh Blur Threshold=0.5
Bokeh Size=8.0
DOF Gather Blur Radius=12.0
DOF Gather Blur Radius=8.0
DES mode=0
DES Level=0.0
DES Blend Color=1, 0, 0
@ -208,3 +208,13 @@ Guassian Radius=1.0
Noise Amount=0.0
Noise Curve=1.0
DOF Minimum Blur=0.01
Focus Mode=1
DOF Horizontal Tilt Center=0.5
DOF Vertical Tilt Center=0.5
DOF Horizontal Tilt=0.0
DOF Vertical Tilt=0.0
Focus Plane Horizontal Tilt Center=0.5
Focus Plane Vertical Tilt Center=0.5
Focus Plane Horizontal Tilt=0.0
Focus Plane Vertical Tilt=0.0
Use Only Fixed DOF=false

View file

@ -93,7 +93,7 @@ float4 PS_BloomTexture2(VS_OUTPUT_POST In) : COLOR
float3 blu_id = float3(blu_id_r,blu_id_g,blu_id_b);
float3 blu = tod_ind(blu);
float bsi = tod_ind(bsi);
float lm = max(0,luminance(res.rgb)-luminance(base.rgb))*bsi;
float lm = clamp(0,1,luminance(res.rgb)-luminance(base.rgb))*bsi;
lm = lm/(1.0+lm);
lm *= 1.0-saturate((TempParameters.w-1.0)*bslp);
blu = saturate(blu+(TempParameters.w-1.0)*bsbp);
@ -124,11 +124,11 @@ float4 PS_AnamPass(VS_OUTPUT_POST In) : COLOR
int i;
float sum = 0;
float2 pp;
[unroll] for ( i=-39; i<=39; i++ )
[unroll] for ( i=-79; i<=79; i++ )
{
pp = coord+float2(i,0)*TempParameters.z*bloomradiusx*flen;
res += gauss40[abs(i)]*tex2D(SamplerBloom1,pp);
sum += ((pp.x>=0)&&(pp.x<1))?gauss40[abs(i)]:0;
res += gauss80[abs(i)]*tex2D(SamplerBloom1,pp);
sum += ((pp.x>=0)&&(pp.x<1))?gauss80[abs(i)]:0;
}
res *= 1.0/sum;
/* blue shift */
@ -138,7 +138,7 @@ float4 PS_AnamPass(VS_OUTPUT_POST In) : COLOR
float3 flu_id = float3(flu_id_r,flu_id_g,flu_id_b);
float3 flu = tod_ind(flu);
float fsi = tod_ind(fsi);
float lm = max(0,luminance(res.rgb)-luminance(base.rgb))*fsi;
float lm = clamp(0,1,luminance(res.rgb)-luminance(base.rgb))*fsi;
lm = lm/(1.0+lm);
float fbl = tod_ind(fbl);
float fpw = tod_ind(fpw);

View file

@ -19,7 +19,7 @@ static const float gauss8[8] =
0.055335, 0.033562, 0.018216, 0.008847
};
/* radius: 40, std dev: 15 */
static const float gauss40[40] =
/*static const float gauss40[40] =
{
0.026823, 0.026763, 0.026585, 0.026291,
0.025886, 0.025373, 0.024760, 0.024055,
@ -31,9 +31,9 @@ static const float gauss40[40] =
0.004697, 0.004139, 0.003630, 0.003170,
0.002756, 0.002385, 0.002055, 0.001763,
0.001506, 0.001280, 0.001084, 0.000913
};
};*/
/* radius: 80, std dev: 30 */
/*static const float gauss80[80] =
static const float gauss80[80] =
{
0.013406, 0.013398, 0.013376, 0.013339, 0.013287, 0.013221,
0.013140, 0.013046, 0.012938, 0.012816, 0.012681, 0.012534,
@ -49,7 +49,7 @@ static const float gauss40[40] =
0.001192, 0.001107, 0.001027, 0.000952, 0.000881, 0.000815,
0.000753, 0.000694, 0.000640, 0.000589, 0.000542, 0.000497,
0.000456, 0.000418
};*/
};
/* standard stuff */
float4 ScreenSize;
float4 TempParameters;

View file

@ -283,12 +283,12 @@ float4 PS_ASCII( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
float2 cresl = float2(GLYPH_WIDTH,GLYPH_HEIGHT);
float2 bscl = floor(bresl/cresl);
/*
Here I use the "cheap" method, based on the overall luminance of each
glyph, rather than attempt to search for the best fitting glyph for
each cell. If you want to know why, take a look at the ASCII filter
bundled with the Dolphin emulator, and be prepared for the resulting
seconds per frame it runs at. The calculations needed for such a filter
are completely insane even for the highest-end GPUs.
Here I use the "cheap" method, based on the overall luminance of
each glyph, rather than attempt to search for the best fitting glyph
for each cell. If you want to know why, take a look at the ASCII
filter bundled with the Dolphin emulator, and be prepared for the
resulting seconds per frame it runs at. The calculations needed for
such a filter are completely insane even for the highest-end GPUs.
*/
float3 col = tex2D(SamplerColor,floor(bscl*coord)/bscl).rgb;
int lum = clamp(luminance(col)*FONT_LEVELS,0,FONT_LEVELS);
@ -311,7 +311,11 @@ float4 PS_ChromaKey( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
float2 coord = IN.txcoord.xy;
float4 res = tex2D(SamplerColor,coord);
if ( !maskenable ) return res;
if ( tex2D(SamplerDepth,coord).x > maskd )
float dep = tex2D(SamplerDepth,coord).x;
float msd = maskd;
msd = maskd+0.01*masktiltx*(masktiltxcenter-coord.x)
+0.01*masktilty*(masktiltycenter-coord.y);
if ( dep > msd )
return float4(maskr,maskg,maskb,1.0);
return res;
}
@ -463,6 +467,16 @@ float4 PS_Shift( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
res.a = 1.0;
return res;
}
/*
Extra ideas:
- Bring back depth-relative colour grading
- Try to resurrect oil filter
- Provide an alternate, smaller font for ASCII filter (miniwi seems like
a good candidate, since it's 4x8)
- [Enhancement] Separate extra filters into different "batches" to get over
the "8 technique limit" (if it's still a thing in current ENB).
- More palettes?
*/
technique PostProcess
{
pass p0

View file

@ -188,6 +188,31 @@ float maskd
float UIMin = 0.0;
float UIMax = 1.0;
> = {0.5};
/* tilting */
float masktiltxcenter
<
string UIName = "Chroma Key Depth Horizontal Tilt Center";
string UIWidget = "Spinner";
float UIMin = 0.0;
float UIMax = 1.0;
> = {0.5};
float masktiltycenter
<
string UIName = "Chroma Key Depth Vertical Tilt Center";
string UIWidget = "Spinner";
float UIMin = 0.0;
float UIMax = 1.0;
> = {0.5};
float masktiltx
<
string UIName = "Chroma Key Depth Horizontal Tilt";
string UIWidget = "Spinner";
> = {0.0};
float masktilty
<
string UIName = "Chroma Key Depth Vertical Tilt";
string UIWidget = "Spinner";
> = {0.0};
string str_dot = "RGBI Dot Matrix";
bool dotenable
<

View file

@ -61,6 +61,3 @@
//#define LENSDIRT_DDS
//#define FROST_DDS
//#define FROSTBUMP_DDS
/* experimental features (TODO) */
#define USE_BOKEH
//#define MULTIPASS_RMAO

View file

@ -316,11 +316,23 @@ float4 PS_SSAOBlurV( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
float4 PS_ReadFocus( VS_OUTPUT_POST IN ) : COLOR
{
if ( dofdisable ) return 0.0;
if ( focusmanual ) return focusmanualvalue;
if ( focuscircle < 0 ) return focusmanualvalue;
float focusmax = tod_ind(focusmax);
float2 fcenter = float2(focuscenter_x,focuscenter_y);
float cfocus = min(tex2D(SamplerDepth,fcenter).x,focusmax*0.001);
if ( !focuscircle ) return cfocus;
if ( focuscircle == 0 ) return cfocus;
if ( focuscircle == 2 )
{
int i, j;
float mfocus = 0.0;
float2 px;
[unroll] for( j=0; j<8; j++ ) [unroll] for( i=0; i<8; i++ )
{
px = float2((i+0.5)/8.0,(j+0.5)/8.0);
mfocus += min(tex2D(SamplerDepth,px).x,focusmax*0.001);
}
return mfocus/64.0;
}
/* using polygons inscribed into a circle, in this case a triangle */
float focusradius = tod_ind(focusradius);
float focusmix = tod_ind(focusmix);
@ -365,6 +377,9 @@ float4 PS_DoFPrepass( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
float doffixedunfocusblend = tod_ind(doffixedunfocusblend);
float dep = tex2D(SamplerDepth,coord).x;
float foc = tex2D(SamplerFocus,coord).x;
/* cheap tilt */
foc = foc+0.01*doftiltx*(doftiltxcenter-coord.x)
+0.01*doftilty*(doftiltycenter-coord.y);
float dfc = abs(dep-foc);
float dff = abs(dep);
float dfu = dff;
@ -389,6 +404,7 @@ float4 PS_DoFPrepass( VS_OUTPUT_POST IN, float2 vPos : VPOS ) : COLOR
+doffixedfocusbump,0.0,1.0);
dfu = clamp(pow(dfu,doffixedunfocuspow)*doffixedunfocusmult
+doffixedunfocusbump,0.0,1.0);
if ( doffixedonly ) dfc *= 0;
dfc *= lerp(1.0,dff,doffixedfocusblend);
dfc += lerp(0.0,dfu,doffixedunfocusblend);
dfc = saturate(dfc);
@ -433,60 +449,6 @@ float4 PS_DoFGather( VS_OUTPUT_POST IN, float2 vPos : VPOS) : COLOR
res.a = 1.0;
return res;
}
float4 PS_DoFBlurH( VS_OUTPUT_POST IN, float2 vPos : VPOS) : COLOR
{
float2 coord = IN.txcoord.xy;
if ( dofdisable ) return tex2D(SamplerColor,coord);
float dfc = tex2D(SamplerColor,coord).a;
if ( dofdebug ) return tex2D(SamplerDepth,coord).x;
if ( dfcdebug ) return dfc;
float bresl = (fixedx>0)?fixedx:ScreenSize.x;
float bof = (1.0/bresl)*dofbradius;
float4 res = float4(0,0,0,0);
if ( dfc <= dofminblur ) return tex2D(SamplerColor,coord);
int i;
float isd, sd, ds, sw, tw = 0;
isd = dfc;
[unroll] for ( i=-7; i<=7; i++ )
{
sd = tex2D(SamplerColor,coord+float2(i,0)*bof*dfc).a;
ds = abs(isd-sd)*dofbfact+0.5;
sw = 1.0/(ds+1.0);
sw *= gauss8[abs(i)];
tw += sw;
res += sw*tex2D(SamplerColor,coord+float2(i,0)*bof*dfc);
}
res /= tw;
res.a = dfc;
return res;
}
float4 PS_DoFBlurV( VS_OUTPUT_POST IN, float2 vPos : VPOS) : COLOR
{
float2 coord = IN.txcoord.xy;
if ( dofdisable ) return tex2D(SamplerColor,coord);
float dfc = tex2D(SamplerColor,coord).a;
if ( dofdebug ) return tex2D(SamplerDepth,coord).x;
if ( dfcdebug ) return dfc;
float bresl = (fixedy>0)?fixedy:(ScreenSize.x*ScreenSize.w);
float bof = (1.0/bresl)*dofbradius;
float4 res = float4(0,0,0,0);
if ( dfc <= dofminblur ) return tex2D(SamplerColor,coord);
int i;
float isd, sd, ds, sw, tw = 0;
isd = dfc;
[unroll] for ( i=-7; i<=7; i++ )
{
sd = tex2D(SamplerColor,coord+float2(0,i)*bof*dfc).a;
ds = abs(isd-sd)*dofbfact+0.5;
sw = 1.0/(ds+1.0);
sw *= gauss8[abs(i)];
tw += sw;
res += sw*tex2D(SamplerColor,coord+float2(0,i)*bof*dfc);
}
res /= tw;
res.a = 1.0;
return res;
}
/* Screen frost shader. Not very realistic either, but looks fine too. */
float2 ScreenFrost( float2 coord )
{
@ -544,9 +506,22 @@ float4 PS_FrostPass( VS_OUTPUT_POST IN, float2 vPos : VPOS) : COLOR
res.rgb *= 1.0+bmp*dist;
}
else res = tex2D(SamplerColor,coord);
if ( !focusdisplay ) return res;
if ( !focusdisplay || (focuscircle < 0) ) return res;
if ( focuscircle == 2 )
{
int i, j;
float2 px;
[unroll] for( j=0; j<8; j++ ) [unroll] for( i=0; i<8; i++ )
{
px = float2((i+0.5)/8.0,(j+0.5)/8.0);
if ( distance(coord,px) < 0.005 )
res.rgb = float3(1,0,0);
}
return res;
}
float2 fcenter = float2(focuscenter_x,focuscenter_y);
if ( distance(coord,fcenter) < 0.01 ) res.rgb = float3(1,0,0);
if ( distance(coord,fcenter) < 0.005 ) res.rgb = float3(1,0,0);
if ( focuscircle == 0 ) return res;
float cstep = (1.0/3.0);
float2 tcoord;
float focusradius = tod_ind(focusradius);
@ -554,13 +529,13 @@ float4 PS_FrostPass( VS_OUTPUT_POST IN, float2 vPos : VPOS) : COLOR
float fan = focuscircleangle*2.0*pi;
tcoord.x = fcenter.x+sin(fan)*bof.x;
tcoord.y = fcenter.y+cos(fan)*bof.y;
if ( distance(coord,tcoord) < 0.01 ) res.rgb = float3(1,0,0);
if ( distance(coord,tcoord) < 0.005 ) res.rgb = float3(1,0,0);
tcoord.x = fcenter.x+sin(fan+2.0*pi*cstep)*bof.x;
tcoord.y = fcenter.y+cos(fan+2.0*pi*cstep)*bof.y;
if ( distance(coord,tcoord) < 0.01 ) res.rgb = float3(1,0,0);
if ( distance(coord,tcoord) < 0.005 ) res.rgb = float3(1,0,0);
tcoord.x = fcenter.x+sin(fan+4.0*pi*cstep)*bof.x;
tcoord.y = fcenter.y+cos(fan+4.0*pi*cstep)*bof.y;
if ( distance(coord,tcoord) < 0.01 ) res.rgb = float3(1,0,0);
if ( distance(coord,tcoord) < 0.005 ) res.rgb = float3(1,0,0);
return res;
}
technique ReadFocus
@ -593,7 +568,7 @@ technique WriteFocus
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcess <string UIName="MariENB Bilateral Blur DoF";>
technique PostProcess
{
pass p0
{
@ -683,7 +658,7 @@ technique PostProcess6
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_DoFBlurH();
PixelShader = compile ps_3_0 PS_DoFGather();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
@ -696,142 +671,6 @@ technique PostProcess6
}
}
technique PostProcess7
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_DoFBlurV();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcess8
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_FrostPass();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG <string UIName="MariENB Gather Blur DoF";>
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_EdgePlusSSAOPrepass();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG2
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_Distortion();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG3
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_SSAOBlurH();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG4
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_SSAOBlurV();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG5
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_DoFPrepass();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG6
{
pass p0
{
VertexShader = compile vs_3_0 VS_Pass();
PixelShader = compile ps_3_0 PS_DoFGather();
DitherEnable = FALSE;
ZEnable = FALSE;
CullMode = NONE;
ALPHATESTENABLE = FALSE;
SEPARATEALPHABLENDENABLE = FALSE;
AlphaBlendEnable = FALSE;
StencilEnable = FALSE;
FogEnable = FALSE;
SRGBWRITEENABLE = FALSE;
}
}
technique PostProcessG7
{
pass p0
{

View file

@ -240,22 +240,28 @@ bool frostalways
string UIWidget = "Checkbox";
> = {false};
string str_focus = "Focusing Parameters";
/* circle (triangle, actually) average focus */
bool focuscircle
/*
focus modes:
-1 : manual
0 : center spot
1 : center + triangle
2 : 8x8 grid average
TODO
3 : 8x8 grid average of 8 closest points
4 : 8x8 grid average of 8 farthest points
*/
int focuscircle
<
string UIName = "Enable Focus Triangle";
string UIName = "Focus Mode";
string UIWidget = "Checkbox";
> = {true};
int UIMin = -1;
int UIMax = 2;
> = {1};
bool focusdisplay
<
string UIName = "Display Focus Points";
string UIWidget = "Checkbox";
> = {false};
bool focusmanual
<
string UIName = "Enable Manual Focus";
string UIWidget = "Checkbox";
> = {false};
float focusmanualvalue
<
string UIName = "Manual Focus Depth";
@ -375,7 +381,7 @@ float dofmult_id
string UIWidget = "Spinner";
float UIMin = 0.0;
> = {500.0};
/* dof power (falloff, kinda) */
/* dof power (the higher it is, the wider the focused area gets) */
float dofpow_n
<
string UIName = "DOF Contrast Night";
@ -400,7 +406,7 @@ float dofpow_id
string UIWidget = "Spinner";
float UIMin = 0.0;
> = {4.0};
/* dof bump (to emulate tilt shift I guess, I brought it back) */
/* dof bump (negative shift increases the area in complete focus) */
float dofbump_n
<
string UIName = "DOF Shift Night";
@ -619,17 +625,11 @@ bool dofdisable
string UIName = "Disable DOF";
string UIWidget = "Checkbox";
> = {false};
float dofbfact
bool doffixedonly
<
string UIName = "DOF Bilateral Factor";
string UIWidget = "Spinner";
> = {20.0};
float dofbradius
<
string UIName = "DOF Blur Radius";
string UIWidget = "Spinner";
float UIMin = 0.0;
> = {1.0};
string UIName = "Use Only Fixed DOF";
string UIWidget = "Checkbox";
> = {false};
float dofpradius
<
string UIName = "DOF Gather Blur Radius";
@ -670,6 +670,31 @@ float relfovfactor_id
string UIWidget = "Spinner";
> = {2.0};
#endif
/* tilting */
float doftiltxcenter
<
string UIName = "Focus Plane Horizontal Tilt Center";
string UIWidget = "Spinner";
float UIMin = 0.0;
float UIMax = 1.0;
> = {0.5};
float doftiltycenter
<
string UIName = "Focus Plane Vertical Tilt Center";
string UIWidget = "Spinner";
float UIMin = 0.0;
float UIMax = 1.0;
> = {0.5};
float doftiltx
<
string UIName = "Focus Plane Horizontal Tilt";
string UIWidget = "Spinner";
> = {0.0};
float doftilty
<
string UIName = "Focus Plane Vertical Tilt";
string UIWidget = "Spinner";
> = {0.0};
/* cheap performance option */
float dofminblur
<