Merge pull request #1763 from Azaezel/linearBuffers

banding: conforms misbehaving postfx to the hdr buffer format
This commit is contained in:
Anis 2016-09-17 21:31:31 +02:00 committed by GitHub
commit 9cb413a38d
5 changed files with 5 additions and 3 deletions

View file

@ -1321,7 +1321,7 @@ DefineEngineFunction( getBestHDRFormat, GFXFormat, (),,
// Figure out the best HDR format. This is the smallest
// format which supports blending and filtering.
Vector<GFXFormat> formats;
formats.push_back( GFXFormatR10G10B10A2 );
//formats.push_back( GFXFormatR10G10B10A2 ); TODO: replace with SRGB format once DX9 is gone - BJR
formats.push_back( GFXFormatR16G16B16A16F );
formats.push_back( GFXFormatR16G16B16A16 );
GFXFormat format = GFX->selectSupportedFormat( &GFXDefaultRenderTargetProfile,

View file

@ -55,6 +55,7 @@ singleton PostEffect( GammaPostFX )
texture[0] = "$backBuffer";
texture[1] = $HDRPostFX::colorCorrectionRamp;
targetFormat = getBestHDRFormat();
};
function GammaPostFX::preProcess( %this )

View file

@ -62,6 +62,7 @@ singleton PostEffect( FogPostFx )
renderPriority = 5;
targetFormat = getBestHDRFormat();
isEnabled = true;
};

View file

@ -318,7 +318,7 @@ function HDRPostFX::onDisabled( %this )
GammaPostFX.enable();
// Restore the non-HDR offscreen surface format.
%format = "GFXFormatR8G8B8A8";
%format = getBestHDRFormat();
AL_FormatToken.format = %format;
setReflectFormat( %format );

View file

@ -33,7 +33,7 @@ function initRenderManager()
{
enabled = "false";
format = "GFXFormatR16G16B16A16F";
format = getBestHDRFormat();
depthFormat = "GFXFormatD24S8";
aaLevel = 0; // -1 = match backbuffer