Ported ReShade 2.x effects
- Chavolatra
-
Less
More
- DeMondo
-
Less
More
Could someone port these 2 awesome shaders:
DOSFX.fx // latest [?] code from IDDQD [ReShade 2.0.3f1]:
/**
* Dos Game shader by Boris Vorontsov
* enbdev.com/effect_dosgame.zip
*/
#include EFFECT_CONFIG(IDDQD)
#if USE_DOSFX
#pragma message "DOS effect by Boris Vorontsov (ported by IDDQD)\n"
namespace Iddqd
{
float4 PS_DosFX(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float2 xs = ReShade::ScreenSize / PIXELSIZE;
#if (ENABLE_SCREENSIZE == 1)
xs=DOSScreenSize;
#endif
texcoord.xy=floor(texcoord.xy * xs)/xs;
float4 origcolor=tex2D(ReShade::BackBuffer, texcoord);
origcolor+=0.0001;
#if (DOSCOLOR == 1)
float graymax=max(origcolor.x, max(origcolor.y, origcolor.z));
float3 ncolor=origcolor.xyz/graymax;
graymax=floor(graymax * DOSColorsCount)/DOSColorsCount;
origcolor.xyz*=graymax;
#if (ENABLE_POSTCURVE == 1)
origcolor.xyz = pow(origcolor.xyz, POSTCURVE);
#endif
#endif
return origcolor;
}
float4 PS_DosGamma(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float4 color=tex2D(ReShade::BackBuffer, texcoord);
color.xyz = lerp(color.xyz,-0.0039*pow(1.0/0.0039, 1.0-color.xyz)+1.0,0.7*(DoSgammaValue/2.2));
return color;
}
technique DosFX_Tech <bool enabled = RESHADE_START_ENABLED; int toggle = Dos_ToggleKey; >
{
#if ENABLE_AGD
pass DosFXGammaPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_DosGamma;
}
#endif
pass DosFXPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_DosFX;
}
}
}
#endif
#include EFFECT_CONFIG_UNDEF(IDDQD)
GradientFX.fx // latest [?] code from IDDQD [ReShade 2.0.3f1]:
/*
CREDITS:
mouaif.wordpress.com/2009/01/05/photosho...h-with-glsl-shaders/
www.shadertoy.com/view/Mt2XDK
*/
#include EFFECT_CONFIG(IDDQD)
#if USE_GRADIENTFX
#pragma message "Gradient overlay effect by smack0007 (ported and modified by IDDQD)\n"
namespace IDDQD
{
#define BlendLinearDodgef BlendAddf
#define BlendLinearBurnf BlendSubstractf
#define BlendAddf(base, blend) min(base + blend, 1.0)
#define BlendSubstractf(base, blend) max(base + blend - 1.0, 0.0)
#define BlendLightenf(base, blend) max(blend, base)
#define BlendDarkenf(base, blend) min(blend, base)
#define BlendLinearLightf(base, blend) (blend < 0.5 ? BlendLinearBurnf(base, (2.0 * blend)) : BlendLinearDodgef(base, (2.0 * (blend - 0.5))))
#define BlendScreenf(base, blend) (1.0 - ((1.0 - base) * (1.0 - blend)))
#define BlendOverlayf(base, blend) (base < 0.5 ? (2.0 * base * blend) : (1.0 - 2.0 * (1.0 - base) * (1.0 - blend)))
#define BlendSoftLightf(base, blend) ((blend < 0.5) ? (2.0 * base * blend + base * base * (1.0 - 2.0 * blend)) : (sqrt(base) * (2.0 * blend - 1.0) + 2.0 * base * (1.0 - blend)))
#define BlendColorDodgef(base, blend) ((blend == 1.0) ? blend : min(base / (1.0 - blend), 1.0))
#define BlendColorBurnf(base, blend) ((blend == 0.0) ? blend : max((1.0 - ((1.0 - base) / blend)), 0.0))
#define BlendVividLightf(base, blend) ((blend < 0.5) ? BlendColorBurnf(base, (2.0 * blend)) : BlendColorDodgef(base, (2.0 * (blend - 0.5))))
#define BlendPinLightf(base, blend) ((blend < 0.5) ? BlendDarkenf(base, (2.0 * blend)) : BlendLightenf(base, (2.0 *(blend - 0.5))))
#define BlendHardMixf(base, blend) ((BlendVividLightf(base, blend) < 0.5) ? 0.0 : 1.0)
#define BlendReflectf(base, blend) ((blend == 1.0) ? blend : min(base * base / (1.0 - blend), 1.0))
/*
** Vector3 blending modes (I edit BlendNormal,BlendOpacity)
*/
// Component wise blending
#define GradientBlend(base, blend, funcf) float3(funcf(base.r, blend.r), funcf(base.g, blend.g), funcf(base.b, blend.b))
#define BlendNormal(base, blend) lerp(base,blend,GradientBlendPower)
#define BlendLighten BlendLightenf
#define BlendDarken BlendDarkenf
#define BlendMultiply(base, blend) (base * blend)
#define BlendAverage(base, blend) ((base + blend) / 2.0)
#define BlendAdd(base, blend) min(base + blend, float3(1.0, 1.0, 1.0))
#define BlendSubstract(base, blend) max(base + blend - float3(1.0, 1.0, 1.0), float3(0.0, 0.0, 0.0))
#define BlendDifference(base, blend) abs(base - blend)
#define BlendNegation(base, blend) (float3(1.0, 1.0, 1.0) - abs(float3(1.0, 1.0, 1.0) - base - blend))
#define BlendExclusion(base, blend) (base + blend - 2.0 * base * blend)
#define BlendScreen(base, blend) GradientBlend(base, blend, BlendScreenf)
#define BlendOverlay(base, blend) GradientBlend(base, blend, BlendOverlayf)
#define BlendSoftLight(base, blend) GradientBlend(base, blend, BlendSoftLightf)
#define BlendHardLight(base, blend) BlendOverlay(blend, base)
#define BlendColorDodge(base, blend) GradientBlend(base, blend, BlendColorDodgef)
#define BlendColorBurn(base, blend) GradientBlend(base, blend, BlendColorBurnf)
#define BlendLinearDodge BlendAdd
#define BlendLinearBurn BlendSubstract
// Linear Light is another contrast-increasing mode
// If the blend color is darker than midgray, Linear Light darkens the image by decreasing the brightness. If the blend color is lighter than midgray, the result is a brighter image due to increased brightness.
#define BlendLinearLight(base, blend) GradientBlend(base, blend, BlendLinearLightf)
#define BlendVividLight(base, blend) GradientBlend(base, blend, BlendVividLightf)
#define BlendPinLight(base, blend) GradientBlend(base, blend, BlendPinLightf)
#define BlendHardMix(base, blend) GradientBlend(base, blend, BlendHardMixf)
#define BlendReflect(base, blend) GradientBlend(base, blend, BlendReflectf)
#define BlendGlow(base, blend) BlendReflect(blend, base)
#define BlendPhoenix(base, blend) (min(base, blend) - max(base, blend) + float3(1.0, 1.0, 1.0))
#define BlendOpacity(base, blend) (GradientShift*(base, blend) * GradientBlendPower + base * (1.0 - GradientBlendPower))
float3 GradientRGBToHSL(float3 color)
{
float3 hsl; // init to 0 to avoid warnings ? (and reverse if + remove first part)
float fmin = min(min(color.r, color.g), color.b); //Min. value of RGB
float fmax = max(max(color.r, color.g), color.b); //Max. value of RGB
float delta = fmax - fmin; //Delta RGB value
hsl.z = (fmax + fmin) / 2.0; // Luminance
if (delta == 0.0) //This is a gray, no chroma...
{
hsl.x = 0.0; // Hue
hsl.y = 0.0; // Saturation
}
else //Chromatic data...
{
if (hsl.z < 0.5)
hsl.y = delta / (fmax + fmin); // Saturation
else
hsl.y = delta / (2.0 - fmax - fmin); // Saturation
float deltaR = (((fmax - color.r) / 6.0) + (delta / 2.0)) / delta;
float deltaG = (((fmax - color.g) / 6.0) + (delta / 2.0)) / delta;
float deltaB = (((fmax - color.b) / 6.0) + (delta / 2.0)) / delta;
if (color.r == fmax )
hsl.x = deltaB - deltaG; // Hue
else if (color.g == fmax)
hsl.x = (1.0 / 3.0) + deltaR - deltaB; // Hue
else if (color.b == fmax)
hsl.x = (2.0 / 3.0) + deltaG - deltaR; // Hue
if (hsl.x < 0.0)
hsl.x += 1.0; // Hue
else if (hsl.x > 1.0)
hsl.x -= 1.0; // Hue
}
return hsl;
}
float GradientHueToRGB(float f1, float f2, float hue)
{
if (hue < 0.0)
hue += 1.0;
else if (hue > 1.0)
hue -= 1.0;
float res;
if ((6.0 * hue) < 1.0)
res = f1 + (f2 - f1) * 6.0 * hue;
else if ((2.0 * hue) < 1.0)
res = f2;
else if ((3.0 * hue) < 2.0)
res = f1 + (f2 - f1) * ((2.0 / 3.0) - hue) * 6.0;
else
res = f1;
return res;
}
float3 GradientHSLToRGB(float3 hsl)
{
float3 rgb;
if (hsl.y == 0.0)
rgb = float3(hsl.z, hsl.z, hsl.z); // Luminance
else
{
float f2;
if (hsl.z < 0.5)
f2 = hsl.z * (1.0 + hsl.y);
else
f2 = (hsl.z + hsl.y) - (hsl.y * hsl.z);
float f1 = 2.0 * hsl.z - f2;
rgb.r = GradientHueToRGB(f1, f2, hsl.x + (1.0/3.0));
rgb.g = GradientHueToRGB(f1, f2, hsl.x);
rgb.b= GradientHueToRGB(f1, f2, hsl.x - (1.0/3.0));
}
return rgb;
}
// Hue Blend mode creates the result color by combining the luminance and saturation of the base color with the hue of the blend color.
float3 GradientBlendHue(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(GradientRGBToHSL(blend).r, baseHSL.g, baseHSL.b));
}
// Saturation Blend mode creates the result color by combining the luminance and hue of the base color with the saturation of the blend color.
float3 GradientBlendSaturation(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(baseHSL.r, GradientRGBToHSL(blend).g, baseHSL.b));
}
// Color Mode keeps the brightness of the base color and applies both the hue and saturation of the blend color.
float3 GradientBlendColor(float3 base, float3 blend)
{
float3 blendHSL = GradientRGBToHSL(blend);
return GradientHSLToRGB(float3(blendHSL.r, blendHSL.g, GradientRGBToHSL(base).b));
}
// Luminosity Blend mode creates the result color by combining the hue and saturation of the base color with the luminance of the blend color.
float3 GradientBlendLuminosity(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(baseHSL.r, baseHSL.g, GradientRGBToHSL(base).b));
}
float4 PS_GradientFX(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float4 Color = tex2D(ReShade::BackBuffer, texcoord);
float4 MainColor = float4(0,0,0,0);
float angle = radians(GradientRotation) + atan2(texcoord.y, texcoord.x);
texcoord = float2(cos(angle) * length(texcoord), sin(angle) * length(texcoord)) + float2(0.5, 0.5);
MainColor.rgb = lerp(GradientTop, GradientBottom, smoothstep(0.0, 1.0, texcoord.x - GradientShift));
MainColor.rgb = lerp(MainColor.rgb,Color.rgb,1.0-GradientOpacility);
Color.rgb = GradientBlendLuminosity(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendHue(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendSaturation(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendColor(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendMode(Color.rgb,MainColor.rgb);
//Color.rgb = GradientPower;
return Color;
}
technique GradientFX_Tech <bool enabled = RESHADE_START_ENABLED; int toggle = GradientFX_ToggleKey; >
{
pass GradientFXPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_GradientFX;
}
}
}
#endif
#include EFFECT_CONFIG_UNDEF(IDDQD)
T.I.A
DOSFX.fx // latest [?] code from IDDQD [ReShade 2.0.3f1]:
Warning: Spoiler!
/**
* Dos Game shader by Boris Vorontsov
* enbdev.com/effect_dosgame.zip
*/
#include EFFECT_CONFIG(IDDQD)
#if USE_DOSFX
#pragma message "DOS effect by Boris Vorontsov (ported by IDDQD)\n"
namespace Iddqd
{
float4 PS_DosFX(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float2 xs = ReShade::ScreenSize / PIXELSIZE;
#if (ENABLE_SCREENSIZE == 1)
xs=DOSScreenSize;
#endif
texcoord.xy=floor(texcoord.xy * xs)/xs;
float4 origcolor=tex2D(ReShade::BackBuffer, texcoord);
origcolor+=0.0001;
#if (DOSCOLOR == 1)
float graymax=max(origcolor.x, max(origcolor.y, origcolor.z));
float3 ncolor=origcolor.xyz/graymax;
graymax=floor(graymax * DOSColorsCount)/DOSColorsCount;
origcolor.xyz*=graymax;
#if (ENABLE_POSTCURVE == 1)
origcolor.xyz = pow(origcolor.xyz, POSTCURVE);
#endif
#endif
return origcolor;
}
float4 PS_DosGamma(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float4 color=tex2D(ReShade::BackBuffer, texcoord);
color.xyz = lerp(color.xyz,-0.0039*pow(1.0/0.0039, 1.0-color.xyz)+1.0,0.7*(DoSgammaValue/2.2));
return color;
}
technique DosFX_Tech <bool enabled = RESHADE_START_ENABLED; int toggle = Dos_ToggleKey; >
{
#if ENABLE_AGD
pass DosFXGammaPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_DosGamma;
}
#endif
pass DosFXPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_DosFX;
}
}
}
#endif
#include EFFECT_CONFIG_UNDEF(IDDQD)
GradientFX.fx // latest [?] code from IDDQD [ReShade 2.0.3f1]:
Warning: Spoiler!
/*
CREDITS:
mouaif.wordpress.com/2009/01/05/photosho...h-with-glsl-shaders/
www.shadertoy.com/view/Mt2XDK
*/
#include EFFECT_CONFIG(IDDQD)
#if USE_GRADIENTFX
#pragma message "Gradient overlay effect by smack0007 (ported and modified by IDDQD)\n"
namespace IDDQD
{
#define BlendLinearDodgef BlendAddf
#define BlendLinearBurnf BlendSubstractf
#define BlendAddf(base, blend) min(base + blend, 1.0)
#define BlendSubstractf(base, blend) max(base + blend - 1.0, 0.0)
#define BlendLightenf(base, blend) max(blend, base)
#define BlendDarkenf(base, blend) min(blend, base)
#define BlendLinearLightf(base, blend) (blend < 0.5 ? BlendLinearBurnf(base, (2.0 * blend)) : BlendLinearDodgef(base, (2.0 * (blend - 0.5))))
#define BlendScreenf(base, blend) (1.0 - ((1.0 - base) * (1.0 - blend)))
#define BlendOverlayf(base, blend) (base < 0.5 ? (2.0 * base * blend) : (1.0 - 2.0 * (1.0 - base) * (1.0 - blend)))
#define BlendSoftLightf(base, blend) ((blend < 0.5) ? (2.0 * base * blend + base * base * (1.0 - 2.0 * blend)) : (sqrt(base) * (2.0 * blend - 1.0) + 2.0 * base * (1.0 - blend)))
#define BlendColorDodgef(base, blend) ((blend == 1.0) ? blend : min(base / (1.0 - blend), 1.0))
#define BlendColorBurnf(base, blend) ((blend == 0.0) ? blend : max((1.0 - ((1.0 - base) / blend)), 0.0))
#define BlendVividLightf(base, blend) ((blend < 0.5) ? BlendColorBurnf(base, (2.0 * blend)) : BlendColorDodgef(base, (2.0 * (blend - 0.5))))
#define BlendPinLightf(base, blend) ((blend < 0.5) ? BlendDarkenf(base, (2.0 * blend)) : BlendLightenf(base, (2.0 *(blend - 0.5))))
#define BlendHardMixf(base, blend) ((BlendVividLightf(base, blend) < 0.5) ? 0.0 : 1.0)
#define BlendReflectf(base, blend) ((blend == 1.0) ? blend : min(base * base / (1.0 - blend), 1.0))
/*
** Vector3 blending modes (I edit BlendNormal,BlendOpacity)
*/
// Component wise blending
#define GradientBlend(base, blend, funcf) float3(funcf(base.r, blend.r), funcf(base.g, blend.g), funcf(base.b, blend.b))
#define BlendNormal(base, blend) lerp(base,blend,GradientBlendPower)
#define BlendLighten BlendLightenf
#define BlendDarken BlendDarkenf
#define BlendMultiply(base, blend) (base * blend)
#define BlendAverage(base, blend) ((base + blend) / 2.0)
#define BlendAdd(base, blend) min(base + blend, float3(1.0, 1.0, 1.0))
#define BlendSubstract(base, blend) max(base + blend - float3(1.0, 1.0, 1.0), float3(0.0, 0.0, 0.0))
#define BlendDifference(base, blend) abs(base - blend)
#define BlendNegation(base, blend) (float3(1.0, 1.0, 1.0) - abs(float3(1.0, 1.0, 1.0) - base - blend))
#define BlendExclusion(base, blend) (base + blend - 2.0 * base * blend)
#define BlendScreen(base, blend) GradientBlend(base, blend, BlendScreenf)
#define BlendOverlay(base, blend) GradientBlend(base, blend, BlendOverlayf)
#define BlendSoftLight(base, blend) GradientBlend(base, blend, BlendSoftLightf)
#define BlendHardLight(base, blend) BlendOverlay(blend, base)
#define BlendColorDodge(base, blend) GradientBlend(base, blend, BlendColorDodgef)
#define BlendColorBurn(base, blend) GradientBlend(base, blend, BlendColorBurnf)
#define BlendLinearDodge BlendAdd
#define BlendLinearBurn BlendSubstract
// Linear Light is another contrast-increasing mode
// If the blend color is darker than midgray, Linear Light darkens the image by decreasing the brightness. If the blend color is lighter than midgray, the result is a brighter image due to increased brightness.
#define BlendLinearLight(base, blend) GradientBlend(base, blend, BlendLinearLightf)
#define BlendVividLight(base, blend) GradientBlend(base, blend, BlendVividLightf)
#define BlendPinLight(base, blend) GradientBlend(base, blend, BlendPinLightf)
#define BlendHardMix(base, blend) GradientBlend(base, blend, BlendHardMixf)
#define BlendReflect(base, blend) GradientBlend(base, blend, BlendReflectf)
#define BlendGlow(base, blend) BlendReflect(blend, base)
#define BlendPhoenix(base, blend) (min(base, blend) - max(base, blend) + float3(1.0, 1.0, 1.0))
#define BlendOpacity(base, blend) (GradientShift*(base, blend) * GradientBlendPower + base * (1.0 - GradientBlendPower))
float3 GradientRGBToHSL(float3 color)
{
float3 hsl; // init to 0 to avoid warnings ? (and reverse if + remove first part)
float fmin = min(min(color.r, color.g), color.b); //Min. value of RGB
float fmax = max(max(color.r, color.g), color.b); //Max. value of RGB
float delta = fmax - fmin; //Delta RGB value
hsl.z = (fmax + fmin) / 2.0; // Luminance
if (delta == 0.0) //This is a gray, no chroma...
{
hsl.x = 0.0; // Hue
hsl.y = 0.0; // Saturation
}
else //Chromatic data...
{
if (hsl.z < 0.5)
hsl.y = delta / (fmax + fmin); // Saturation
else
hsl.y = delta / (2.0 - fmax - fmin); // Saturation
float deltaR = (((fmax - color.r) / 6.0) + (delta / 2.0)) / delta;
float deltaG = (((fmax - color.g) / 6.0) + (delta / 2.0)) / delta;
float deltaB = (((fmax - color.b) / 6.0) + (delta / 2.0)) / delta;
if (color.r == fmax )
hsl.x = deltaB - deltaG; // Hue
else if (color.g == fmax)
hsl.x = (1.0 / 3.0) + deltaR - deltaB; // Hue
else if (color.b == fmax)
hsl.x = (2.0 / 3.0) + deltaG - deltaR; // Hue
if (hsl.x < 0.0)
hsl.x += 1.0; // Hue
else if (hsl.x > 1.0)
hsl.x -= 1.0; // Hue
}
return hsl;
}
float GradientHueToRGB(float f1, float f2, float hue)
{
if (hue < 0.0)
hue += 1.0;
else if (hue > 1.0)
hue -= 1.0;
float res;
if ((6.0 * hue) < 1.0)
res = f1 + (f2 - f1) * 6.0 * hue;
else if ((2.0 * hue) < 1.0)
res = f2;
else if ((3.0 * hue) < 2.0)
res = f1 + (f2 - f1) * ((2.0 / 3.0) - hue) * 6.0;
else
res = f1;
return res;
}
float3 GradientHSLToRGB(float3 hsl)
{
float3 rgb;
if (hsl.y == 0.0)
rgb = float3(hsl.z, hsl.z, hsl.z); // Luminance
else
{
float f2;
if (hsl.z < 0.5)
f2 = hsl.z * (1.0 + hsl.y);
else
f2 = (hsl.z + hsl.y) - (hsl.y * hsl.z);
float f1 = 2.0 * hsl.z - f2;
rgb.r = GradientHueToRGB(f1, f2, hsl.x + (1.0/3.0));
rgb.g = GradientHueToRGB(f1, f2, hsl.x);
rgb.b= GradientHueToRGB(f1, f2, hsl.x - (1.0/3.0));
}
return rgb;
}
// Hue Blend mode creates the result color by combining the luminance and saturation of the base color with the hue of the blend color.
float3 GradientBlendHue(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(GradientRGBToHSL(blend).r, baseHSL.g, baseHSL.b));
}
// Saturation Blend mode creates the result color by combining the luminance and hue of the base color with the saturation of the blend color.
float3 GradientBlendSaturation(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(baseHSL.r, GradientRGBToHSL(blend).g, baseHSL.b));
}
// Color Mode keeps the brightness of the base color and applies both the hue and saturation of the blend color.
float3 GradientBlendColor(float3 base, float3 blend)
{
float3 blendHSL = GradientRGBToHSL(blend);
return GradientHSLToRGB(float3(blendHSL.r, blendHSL.g, GradientRGBToHSL(base).b));
}
// Luminosity Blend mode creates the result color by combining the hue and saturation of the base color with the luminance of the blend color.
float3 GradientBlendLuminosity(float3 base, float3 blend)
{
float3 baseHSL = GradientRGBToHSL(base);
return GradientHSLToRGB(float3(baseHSL.r, baseHSL.g, GradientRGBToHSL(base).b));
}
float4 PS_GradientFX(float4 vpos : SV_Position, float2 texcoord : TEXCOORD) : SV_Target
{
float4 Color = tex2D(ReShade::BackBuffer, texcoord);
float4 MainColor = float4(0,0,0,0);
float angle = radians(GradientRotation) + atan2(texcoord.y, texcoord.x);
texcoord = float2(cos(angle) * length(texcoord), sin(angle) * length(texcoord)) + float2(0.5, 0.5);
MainColor.rgb = lerp(GradientTop, GradientBottom, smoothstep(0.0, 1.0, texcoord.x - GradientShift));
MainColor.rgb = lerp(MainColor.rgb,Color.rgb,1.0-GradientOpacility);
Color.rgb = GradientBlendLuminosity(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendHue(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendSaturation(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendColor(Color.rgb,MainColor.rgb);
Color.rgb = GradientBlendMode(Color.rgb,MainColor.rgb);
//Color.rgb = GradientPower;
return Color;
}
technique GradientFX_Tech <bool enabled = RESHADE_START_ENABLED; int toggle = GradientFX_ToggleKey; >
{
pass GradientFXPass
{
VertexShader = ReShade::VS_PostProcess;
PixelShader = PS_GradientFX;
}
}
}
#endif
#include EFFECT_CONFIG_UNDEF(IDDQD)
T.I.A
Please Log in or Create an account to join the conversation.
- Scorpio82CO
-
Less
More
Can any one help to port the anamorphic lens from reshade -MasterEffect ReBorn 1.1.287 - as apart shader?? i thanks!
Please Log in or Create an account to join the conversation.
- Throson34
-
Less
More
So am I blind or is colormood.fx listed but the code not posted in the OP ? Does anyone know where i can get it for the latest reshade ?
Please Log in or Create an account to join the conversation.
- Insomnia
-
Topic Author
Less
More
Throson34 wrote: So am I blind or is colormood.fx listed but the code not posted in the OP ? Does anyone know where i can get it for the latest reshade ?
Completely missed posting the code. Fixed now.
Please Log in or Create an account to join the conversation.
- Insomnia
-
Topic Author
Less
More
5 years 7 months ago - 5 years 7 months ago #46
by Insomnia
Replied by Insomnia on topic Ported ReShade 2.x effects
Last edit: 5 years 7 months ago by Insomnia.
The following user(s) said Thank You: jas01, acknowledge
Please Log in or Create an account to join the conversation.
- Antony88
-
Less
More
5 years 3 months ago - 5 years 3 months ago #47
by Antony88
Replied by Antony88 on topic Ported ReShade 2.x effects
Insomnia wrote: Added Gr8mmFilm overlay shader.
Very nice, thank you very much for your help!
Could you please help me to find also "Skirim Tonemap" shader for reshade 3.x, please? It's my favourite Reshade 2 shader : )
I really like to use it also on the newest version of reshade, it's possible to port it?
p.s.
I tried some of your ported effects on reshade 3.4.1 and they run nicely , but I have a problem when I add those shaders I don't know why I get error opening other default shaders like "HDR" o "Clarity" and some other...I dunno why...
Last edit: 5 years 3 months ago by Antony88.
Please Log in or Create an account to join the conversation.
- Dazaster
-
Less
More
Been searching for the emboss effect, found it here, still working with 4.8.2 in Fallout 4.
Please Log in or Create an account to join the conversation.