|
@@ -172,6 +172,8 @@ singleton ShaderData( HDR_CombineShader )
|
|
|
samplerNames[2] = "$bloomTex";
|
|
|
samplerNames[3] = "$colorCorrectionTex";
|
|
|
|
|
|
+ samplerNames[4] = "prepassTex";
|
|
|
+
|
|
|
pixVersion = 3.0;
|
|
|
};
|
|
|
|
|
@@ -253,8 +255,10 @@ function HDRPostFX::setShaderConsts( %this )
|
|
|
%combinePass.setShaderConst( "$g_fEnableBlueShift", $HDRPostFX::enableBlueShift );
|
|
|
%combinePass.setShaderConst( "$g_fBlueShiftColor", $HDRPostFX::blueShiftColor );
|
|
|
|
|
|
- %clampedGamma = mClamp( $pref::Video::Gamma, 0.001, 2.2);
|
|
|
+ %clampedGamma = mClamp( $pref::Video::Gamma, 2.0, 2.5);
|
|
|
%combinePass.setShaderConst( "$g_fOneOverGamma", 1 / %clampedGamma );
|
|
|
+ %combinePass.setShaderConst( "$Brightness", $pref::Video::Brightness );
|
|
|
+ %combinePass.setShaderConst( "$Contrast", $pref::Video::Contrast );
|
|
|
|
|
|
%whiteCutoff = ( $HDRPostFX::whiteCutoff * $HDRPostFX::whiteCutoff ) *
|
|
|
( $HDRPostFX::whiteCutoff * $HDRPostFX::whiteCutoff );
|
|
@@ -329,7 +333,7 @@ function HDRPostFX::onDisabled( %this )
|
|
|
singleton PostEffect( HDRPostFX )
|
|
|
{
|
|
|
isEnabled = false;
|
|
|
- allowReflectPass = false;
|
|
|
+ allowReflectPass = true;
|
|
|
|
|
|
// Resolve the HDR before we render any editor stuff
|
|
|
// and before we resolve the scene to the backbuffer.
|
|
@@ -355,6 +359,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
shader = HDR_DownScale4x4Shader;
|
|
|
stateBlock = HDR_DownSampleStateBlock;
|
|
|
texture[0] = "$inTex";
|
|
@@ -365,6 +370,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
internalName = "bloomH";
|
|
|
|
|
|
shader = HDR_BloomGaussBlurHShader;
|
|
@@ -376,6 +382,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
internalName = "bloomV";
|
|
|
|
|
|
shader = HDR_BloomGaussBlurVShader;
|
|
@@ -390,6 +397,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
// Now calculate the adapted luminance.
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
internalName = "adaptLum";
|
|
|
|
|
|
shader = HDR_SampleLumShader;
|
|
@@ -401,6 +409,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
shader = HDR_DownSampleLumShader;
|
|
|
stateBlock = HDR_DownSampleStateBlock;
|
|
|
texture[0] = "$inTex";
|
|
@@ -411,6 +420,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
shader = HDR_DownSampleLumShader;
|
|
|
stateBlock = HDR_DownSampleStateBlock;
|
|
|
texture[0] = "$inTex";
|
|
@@ -421,6 +431,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
shader = HDR_DownSampleLumShader;
|
|
|
stateBlock = HDR_DownSampleStateBlock;
|
|
|
texture[0] = "$inTex";
|
|
@@ -434,6 +445,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
// one... PostEffect takes care to manage that.
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
internalName = "finalLum";
|
|
|
shader = HDR_CalcAdaptedLumShader;
|
|
|
stateBlock = HDR_DownSampleStateBlock;
|
|
@@ -450,6 +462,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
// version of the scene.
|
|
|
new PostEffect()
|
|
|
{
|
|
|
+ allowReflectPass = true;
|
|
|
internalName = "combinePass";
|
|
|
|
|
|
shader = HDR_CombineShader;
|
|
@@ -458,6 +471,7 @@ singleton PostEffect( HDRPostFX )
|
|
|
texture[1] = "#adaptedLum";
|
|
|
texture[2] = "#bloomFinal";
|
|
|
texture[3] = $HDRPostFX::colorCorrectionRamp;
|
|
|
+ texture[4] = "#prepass";
|
|
|
target = "$backBuffer";
|
|
|
};
|
|
|
};
|