如何创建简单的HLSL Silverlight过滤器来混合/播放/混合2个图像?

时间:2009-11-15 02:26:52

标签: c# silverlight silverlight-3.0 hlsl blending

如何创建简单的HLSL Silverlight过滤器以混合/播放/混合2张图像?

我需要一些过滤器的工作示例,它将输入2个图像\对象并返回1个图像 - 一些计算的结果。

我想引入Silverlight混合模式!)

1 个答案:

答案 0 :(得分:1)

你要做的第一件事就是定义一个.FX文件。您需要以下代码:

uniform extern texture Image1;
uniform extern texture Image2;
sampler2D BG_Image1_Sampler = sampler_state
{
    Texture = (Image1);
    MinFilter = LINEAR;
    MagFilter = LINEAR;
    MipFilter = LINEAR;
};
sampler2D BG_Image2_Sampler = sampler_state
{
    Texture = (Image2);
    MinFilter = LINEAR;
    MagFilter = LINEAR;
    MipFilter = LINEAR;
};

float4 MyCalcFunction(float2 TexCoords : TEXCOORD0) : COLOR0
{
    float4 outColor;
    //calculations here

    return outColor;
}

technique BlurGlow
{
    pass P0
    {
        PixelShader = compile ps_2_0 MyCalcFunction();
    }
}

我不确定如何在Silverlight中使用FX文件,但这应该可以让你开始!