Browse Source

banding: conforms misbehaving postfx to the hdr buffer format until we have a proper srgb compatible buffer to minimize that with

Azaezel 9 years ago
parent
commit
125b7aa636

+ 1 - 1
Engine/source/gfx/gfxDevice.cpp

@@ -1320,7 +1320,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,

+ 1 - 0
Templates/Full/game/core/scripts/client/postFx/GammaPostFX.cs

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

+ 1 - 0
Templates/Full/game/core/scripts/client/postFx/fog.cs

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

+ 1 - 1
Templates/Full/game/core/scripts/client/postFx/hdr.cs

@@ -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 );
    

+ 1 - 1
Templates/Full/game/core/scripts/client/renderManager.cs

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