Error when compiling FXAA shader

Posted by mulletdevil on Game Development See other posts from Game Development or by mulletdevil
Published on 2012-03-27T10:46:31Z Indexed on 2012/03/27 11:41 UTC
Read the original article Hit count: 966

Filed under:

I am getting the following error when compiling the FXAA shader downloaded from here http://timothylottes.blogspot.co.uk/2011/07/fxaa-311-released.html

Fxaa3_11.h(934,5): error x4000: Use of potentially uninitialized variable (FxaaPixelShader)

Here is the line in the shader

if(earlyExit)
    #if (FXAA_DISCARD == 1)
        FxaaDiscard;
    #else
        return rgbyM;
    #endif

Does anyone know what may be causing this? I have not changed any values in that shader.

Here is a snippet from my current pixel shader

 #define FXAA_GREEN_AS_LUMA 1
 #define FXAA_HLSL_4 1
 #define FXAA_PC 1
 #define FXAA_QUALITY__PRESET 12
 #include "Fxaa3_11.h"

PS_OUTPUT main(PS_INPUT fragment)
{
    PS_OUTPUT output;


    const float2 pos = fragment.hPosition.xy;
    const float4 notUsedFloat4 = float4(0.0f, 0.0f, 0.0f, 0.0f);
    const float fxaaQualitySubpix = 0;
    const float fxaaQualityEdgeThreshold = 0.333;
    const float fxaaQualityEdgeThresholdMin = 0.0833;
    const float notUsedFloat = 0.0f;
    FxaaTex fxaaTex;
    fxaaTex.smpl = SampleType;
    fxaaTex.tex = inputTexture;
    output.colour = FxaaPixelShader(pos,                                //1
                                    notUsedFloat4,                      //2
                                    fxaaTex,                            //3
                                    fxaaTex,                            //4
                                    fxaaTex,                            //5
                                    rcpFrame,                           //6
                                    notUsedFloat4,                      //7
                                    rcpFrameOpt,                        //8
                                    notUsedFloat4,                      //9
                                    fxaaQualitySubpix,                  //10
                                    fxaaQualityEdgeThreshold,           //11
                                    fxaaQualityEdgeThresholdMin,        //12
                                    notUsedFloat,                       //13
                                    notUsedFloat,                       //14
                                    notUsedFloat,                       //15
                                    notUsedFloat                        //16
                                    );
    return output;
}

Am I passing a wrong value into the shader?

© Game Development or respective owner

Related posts about antialiasing