饱和度和冲击波(波纹)效应

时间:2013-02-04 14:13:53

标签: c# xna shader effects

目前,我在2D游戏中使用了饱和效果,但我对HLSL很新,而且很丢失。

    protected override void LoadContent()
    {
    ...things to load...
        //saturation
        desaturateEffect = Content.Load<Effect>("desaturate");
    }

    protected override void Draw(GameTime gameTime)
    {
        desaturateEffect.Parameters["saturationLevel"].SetValue(1 * Life / LifeMax);
        spriteBatch.Begin(SpriteSortMode.Deferred,
                          BlendState.AlphaBlend,
                          SamplerState.LinearClamp,
                          null,
                          null,
                          desaturateEffect,
                          transform);
        ...things to draw...
        spriteBatch.End();
    }

我认为它是一个像素着色器,但我不知道它是否是一个后处理效果。你能解释一下post-processingothers之间的区别吗? 例如,此效果应用于spriteBatch.begin()。对于其他人,他们在哪里申请?

第二件事,我想使用冲击波效应(或涟漪效应),是否也是后期处理?

希望你能指导我。

1 个答案:

答案 0 :(得分:0)

说真的,我搜索了几天,但没有发现任何相关信息。但是在发布这个话题差不多一个小时后,我发现这个回答了我的问题......

http://www.stromcode.com/2008/03/09/intro-to-effects-and-post-processing/