Added shaders
This commit is contained in:
127
data_from_portwine/Reshade/Shaders/FXAA.fx
Normal file
127
data_from_portwine/Reshade/Shaders/FXAA.fx
Normal file
@ -0,0 +1,127 @@
|
||||
/**
|
||||
* FXAA 3.11
|
||||
*
|
||||
* for ReShade 3.0+
|
||||
*/
|
||||
|
||||
#include "ReShadeUI.fxh"
|
||||
|
||||
uniform float Subpix < __UNIFORM_SLIDER_FLOAT1
|
||||
ui_min = 0.0; ui_max = 1.0;
|
||||
ui_tooltip = "Amount of sub-pixel aliasing removal. Higher values makes the image softer/blurrier.";
|
||||
> = 0.25;
|
||||
|
||||
uniform float EdgeThreshold < __UNIFORM_SLIDER_FLOAT1
|
||||
ui_min = 0.0; ui_max = 1.0;
|
||||
ui_label = "Edge Detection Threshold";
|
||||
ui_tooltip = "The minimum amount of local contrast required to apply algorithm.";
|
||||
> = 0.125;
|
||||
uniform float EdgeThresholdMin < __UNIFORM_SLIDER_FLOAT1
|
||||
ui_min = 0.0; ui_max = 1.0;
|
||||
ui_label = "Darkness Threshold";
|
||||
ui_tooltip = "Pixels darker than this are not processed in order to increase performance.";
|
||||
> = 0.0;
|
||||
|
||||
//------------------------------ Non-GUI-settings -------------------------------------------------
|
||||
|
||||
#ifndef FXAA_QUALITY__PRESET
|
||||
// Valid Quality Presets
|
||||
// 10 to 15 - default medium dither (10=fastest, 15=highest quality)
|
||||
// 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality)
|
||||
// 39 - no dither, very expensive
|
||||
#define FXAA_QUALITY__PRESET 15
|
||||
#endif
|
||||
|
||||
#ifndef FXAA_GREEN_AS_LUMA
|
||||
#define FXAA_GREEN_AS_LUMA 0
|
||||
#endif
|
||||
|
||||
#ifndef FXAA_LINEAR_LIGHT
|
||||
#define FXAA_LINEAR_LIGHT 0
|
||||
#endif
|
||||
|
||||
//-------------------------------------------------------------------------------------------------
|
||||
|
||||
#if (__RENDERER__ == 0xb000 || __RENDERER__ == 0xb100)
|
||||
#define FXAA_GATHER4_ALPHA 1
|
||||
#define FxaaTexAlpha4(t, p) tex2Dgather(t, p, 3)
|
||||
#define FxaaTexOffAlpha4(t, p, o) tex2Dgatheroffset(t, p, o, 3)
|
||||
#define FxaaTexGreen4(t, p) tex2Dgather(t, p, 1)
|
||||
#define FxaaTexOffGreen4(t, p, o) tex2Dgatheroffset(t, p, o, 1)
|
||||
#endif
|
||||
|
||||
#define FXAA_PC 1
|
||||
#define FXAA_HLSL_3 1
|
||||
|
||||
// Green as luma requires non-linear colorspace
|
||||
#if FXAA_GREEN_AS_LUMA
|
||||
#undef FXAA_LINEAR_LIGHT
|
||||
#endif
|
||||
|
||||
#include "FXAA.fxh"
|
||||
#include "ReShade.fxh"
|
||||
|
||||
// Samplers
|
||||
|
||||
sampler FXAATexture
|
||||
{
|
||||
Texture = ReShade::BackBufferTex;
|
||||
MinFilter = Linear; MagFilter = Linear;
|
||||
#if FXAA_LINEAR_LIGHT
|
||||
SRGBTexture = true;
|
||||
#endif
|
||||
};
|
||||
|
||||
// Pixel shaders
|
||||
|
||||
#if !FXAA_GREEN_AS_LUMA
|
||||
float4 FXAALumaPass(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
|
||||
{
|
||||
float4 color = tex2D(ReShade::BackBuffer, texcoord.xy);
|
||||
color.a = sqrt(dot(color.rgb * color.rgb, float3(0.299, 0.587, 0.114)));
|
||||
return color;
|
||||
}
|
||||
#endif
|
||||
|
||||
float4 FXAAPixelShader(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
|
||||
{
|
||||
return FxaaPixelShader(
|
||||
texcoord, // pos
|
||||
0, // fxaaConsolePosPos
|
||||
FXAATexture, // tex
|
||||
FXAATexture, // fxaaConsole360TexExpBiasNegOne
|
||||
FXAATexture, // fxaaConsole360TexExpBiasNegTwo
|
||||
BUFFER_PIXEL_SIZE, // fxaaQualityRcpFrame
|
||||
0, // fxaaConsoleRcpFrameOpt
|
||||
0, // fxaaConsoleRcpFrameOpt2
|
||||
0, // fxaaConsole360RcpFrameOpt2
|
||||
Subpix, // fxaaQualitySubpix
|
||||
EdgeThreshold, // fxaaQualityEdgeThreshold
|
||||
EdgeThresholdMin, // fxaaQualityEdgeThresholdMin
|
||||
0, // fxaaConsoleEdgeSharpness
|
||||
0, // fxaaConsoleEdgeThreshold
|
||||
0, // fxaaConsoleEdgeThresholdMin
|
||||
0 // fxaaConsole360ConstDir
|
||||
);
|
||||
}
|
||||
|
||||
// Rendering passes
|
||||
|
||||
technique FXAA
|
||||
{
|
||||
#if !FXAA_GREEN_AS_LUMA
|
||||
pass
|
||||
{
|
||||
VertexShader = PostProcessVS;
|
||||
PixelShader = FXAALumaPass;
|
||||
}
|
||||
#endif
|
||||
pass
|
||||
{
|
||||
VertexShader = PostProcessVS;
|
||||
PixelShader = FXAAPixelShader;
|
||||
#if FXAA_LINEAR_LIGHT
|
||||
SRGBWriteEnable = true;
|
||||
#endif
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user