目前,我在我的 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()
. 对于其他人,它们在哪里应用?
第二件事,我想使用冲击波效果(或涟漪效果),它也是后处理吗?
希望你能指导我。