/*========================================================================== ============
"USER" ADJUSTABLE SETTINGS
=========================================================================== ===========*/
// TODO: Normalize values to be on a human range scale, whole numbers prefered, decimals usable for micro adjustments
// These values should have min/max limit checks included in their functions, so that the end user doesn't get crazy results
/*------------------------------------------------------------------------------
FILTER SELECTION
------------------------------------------------------------------------------*/
// Comment to deactivate an effect.
// Example: To disable the tonemap effect, use // in front of #define USE_TONEMAP
#define USE_ANTI_ALIASING
#define USE_PRE_SHARPEN
//#define USE_BLOOM
//#define USE_TECHNICOLOR
#define USE_TONEMAP
//#define USE_SEPIA
//#define USE_VIGNETTE
//#define USE_POST_SHARPEN
//#define USE_FINAL_LIMITER
/*------------------------------------------------------------------------------
FXAA SHADER
------------------------------------------------------------------------------*/
// Set values to calculate the amount of Anti Aliasing applied
float fxaaQualitySubpix = 1.00; // Default: 0.75 Raise to increase amount of blur
float fxaaQualityEdgeThreshold = 0.012; // Lower the value for more smoothing
float fxaaQualityEdgeThresholdMin = 0.012; // Lower the value for more smoothing
/*------------------------------------------------------------------------------
PRE_SHARPEN
------------------------------------------------------------------------------*/
//For higher precision in the calculation of contour, requires slightly more processing power
bool highQualitySharpen = 0; //0 = Disable | 1 = Enable
// Set values to calculate the amount of AA produced blur to consider for the sharpening pass
#define Average 0.30
#define CoefBlur 1
// Set values of the sharpening amount
#define SharpenEdge 1.2
#define Sharpen_val0 0.5
/*------------------------------------------------------------------------------
BLOOM
------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------
TECHNICOLOR
------------------------------------------------------------------------------*/
#define TechniAmount 0.3 // 1.00 = Max
#define TechniPower 6.0 // lower values = whitening
// lower values = stronger channel
#define redNegativeAmount 1.0 // 1.00 = Max
#define greenNegativeAmount 0.7 // 1.00 = Max
#define blueNegativeAmount 0.7 // 1.00 = Max
/*------------------------------------------------------------------------------
TONEMAP
------------------------------------------------------------------------------*/
#define Gamma 1.00
#define Exposure 0.00
#define Saturation 0.70 // use negative values for less saturation.
#define BlueShift 0.00 // Higher = more blue in image.
#define Bleach -0.04 // Bleach bypass, higher = stronger effect
#define Defog 0.090 // Strength of Lens Colors.
#define FogColor float4(0.06, 0.10, 0.08, 1.00) //Lens-style color filters for Blue, Red, Yellow, White.
/*------------------------------------------------------------------------------
SEPIA
------------------------------------------------------------------------------*/
#define Earthyellow // Color Tone, available tones can be seen in ColorTones.PNG (Do not use spaces in the name!)
#define GreyPower 1 //(Valid Values = 1 to 9, use decimals for finetuning), defines how much of the grey color you wish to blend in
#define SepiaPower 1.2 //(Valid Values = 1 to 9, use decimals for finetuning), defines how much of the color tone you wish to blend in
/*------------------------------------------------------------------------------
VIGNETTE
------------------------------------------------------------------------------*/
// Vignette effect, process by which there is loss in clarity towards the corners and sides of the image, like a picture frame
#define VignetteCenter float2(0.500, 0.500) // Center of screen for effect.
#define VignetteRadius 0.9 // lower values = stronger radial effect from center
#define VignetteAmount -0.50 // Strength of black. -2.00 = Max Black, 1.00 = Max White.
/*------------------------------------------------------------------------------
POST_SHARPEN
------------------------------------------------------------------------------*/
// Controls additional sharpening applied after previous processing. Strength should be max 0.25!
float Sharpen = 0.01;
/*------------------------------------------------------------------------------
FINAL_LIMITER
------------------------------------------------------------------------------*/
// Controls the strenght of the limiter. 1.000 for default setting
int LimiterStrenght = 1.000;