[XNA] Problem with compiling my own HLSL effect

Started by
0 comments, last by MJP 13 years, 11 months ago
Hello. My code is:

FileStream fs = new FileStream("ImageProcessing.fx", FileMode.Open,FileAccess.Read);
            CompiledEffect compiledEffect = Effect.CompileEffectFromFile(fs, null, null, CompilerOptions.None, TargetPlatform.Windows);
            fs.Close();
            effect = new Effect(graphics.GraphicsDevice, compiledEffect.GetEffectCode(), CompilerOptions.None, null);


and my fx file:

float4x4 xViewProjection;

struct VertexToPixel
{
    float4 Position     : POSITION;
    float4 Color        : COLOR0;
};

struct PixelToFrame
{
    float4 Color        : COLOR0;
};

VertexToPixel SimplestVertexShader( float4 inPos : POSITION, float4 inColor : COLOR0)
{
    VertexToPixel Output = (VertexToPixel)0;
    
    Output.Position =mul(inPos, xViewProjection);

     Output.Color = inColor;
 
     return Output;
 }
 
 PixelToFrame OurFirstPixelShader(VertexToPixel PSIn)
 {
     PixelToFrame Output = (PixelToFrame)0;    
 
     Output.Color = PSIn.Color;    
 
     return Output;
 }
 
 technique Simplest
 {
     pass Pass
     {
         VertexShader = compile vs_2_0 SimplestVertexShader();
         PixelShader = compile ps_2_0 OurFirstPixelShader();
     }
 }


It so simple it shouldn't cause a problem yet there is such error: ID3DXEffectCompiler: There were no techniques ID3DXEffectCompiler: Compilation failed Where is the error?
Advertisement
You can't have a pass named "Pass", since "pass" is a reserved keyword.

This topic is closed to new replies.

Advertisement