1

目前,我在我的 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-processing和之间的区别others吗?例如,此效果应用于spriteBatch.begin(). 对于其他人,它们在哪里应用?

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

希望你能指导我。

4

1 回答 1

0

说真的,我已经搜索了几天,并没有找到任何关于此的内容。但是在发布这个主题将近一个小时后,我发现这个回答了我的问题......

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

于 2013-02-04T15:27:27.173 回答