Welcome, Guest.
Username: Password: Remember me

TOPIC: Skyrim Tonemap + Spherical Tonemap?

Skyrim Tonemap + Spherical Tonemap? 1 year 8 months ago #1

Hi guys when is those 2 shaders coming back?
The administrator has disabled public write access.
The following user(s) said Thank You: du

Skyrim Tonemap + Spherical Tonemap? 1 year 8 months ago #2

  • du
  • du's Avatar
  • Offline
MasterEffect ReBorn 1.1.287 Can be used on 3.0.
The administrator has disabled public write access.

Skyrim Tonemap + Spherical Tonemap? 1 year 8 months ago #3

Perhaps it would be easy to have them in the repository...
The administrator has disabled public write access.

Skyrim Tonemap + Spherical Tonemap? 1 year 7 months ago #4

  • du
  • du's Avatar
  • Offline
I don't know how to programming language
Just have a try
Skyrim Tonemap only postprocess 2
Because I only use it
/**
 * Spherical Tonemap
 * Original by Marty McFly 
 */
uniform float sphericalAmount <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 2.000;
	ui_tooltip = "...";
> = 0.500;

#include "ReShade.fxh"

float3 SphericalPass (float4 position : SV_Position, float2 texcoord : TexCoord) : SV_Target
{
    float3 x = tex2D(ReShade::BackBuffer, texcoord).rgb;

    float3 signedColor = x * 2.0 - 1.0;
    float3 sphericalColor = sqrt(1.0 - signedColor.rgb * signedColor.rgb);
    sphericalColor = sphericalColor * 0.5 + 0.5;
    sphericalColor *= x;
    x += sphericalColor.rgb * sphericalAmount;
    return x;
}

technique SphericalTonemap
{
	pass
	{
		VertexShader = PostProcessVS;
		PixelShader = SphericalPass;
	}
}
/**
 * SkyrimTonemap Process 2 Tonemap
 * Original by Marty McFly
 */
uniform float EAdaptationMaxV2 <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 1.000;
	ui_tooltip = "...";
> = 0.350;
uniform float EAdaptationMinV2 <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 1.000;
	ui_tooltip = "...";
> = 0.350;
uniform float ETonemappingCurveV2 <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 20.000;
	ui_tooltip = "...";
> = 6.000;
uniform float EIntensityContrastV2 <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 10.000;
	ui_tooltip = "...";
> = 2.000;
uniform float EColorSaturationV2 <
	ui_type = "drag";
	ui_min = 0.000; ui_max = 10.000;
	ui_tooltip = "...";
> = 1.600;
uniform float EToneMappingOversaturationV2 <
	ui_type = "drag";
	ui_min = 0; ui_max = 250;
	ui_tooltip = "...";
> = 180.000;

#include "ReShade.fxh"

#define LumCoeff 	float3(0.212656, 0.715158, 0.072186)


float3 SkyrimTonemap2Pass (float4 position : SV_Position, float2 texcoord : TexCoord) : SV_Target
{
	float3 x = tex2D(ReShade::BackBuffer, texcoord).rgb;
	float grayadaptation = dot(x, LumCoeff);


    x = x / (grayadaptation * EAdaptationMaxV2 + EAdaptationMinV2);
    float3 xncol = normalize( x );
    float3 scl = x / xncol.xyz;
    scl = pow(scl, EIntensityContrastV2);
    xncol.xyz = pow(xncol.xyz, EColorSaturationV2);
    x = scl*xncol.xyz;
    float lumamax = EToneMappingOversaturationV2;
    x = ( x * (1.0 + x / lumamax )) / ( x + ETonemappingCurveV2);
    x *= 4;
    return x;

}

technique SkyrimTonemap2
{
	pass
	{
		VertexShader = PostProcessVS;
		PixelShader = SkyrimTonemap2Pass;
	}
}
The administrator has disabled public write access.
The following user(s) said Thank You: Rudy102