配置SpriteSortMode和BlendState

时间:2011-12-23 23:47:48

标签: c# xna rendering alphablending

我正在绘制精灵批处理,从背景中的东西开始,以forground结束。

我希望能够使用任何颜色和透明度,或者如果它使任何颜色和单一给定的透明度变得更快,则非常微弱。我需要能够在光线和黑暗或类似色调的光线上绘制黑暗,但彼此之间的颜色不同。

使用最好的SpriteSortMode和BlendState是什么?

我正在考虑SpriteSortMode.Deferred,因为一切都按照我想要渲染的顺序进行,BlendState.NonPremultiplied,尽管我不确定NonPremultiplied的含义。

1 个答案:

答案 0 :(得分:1)

当您调用sprite batch.end时,

Deffered以您调用绘制的顺序呈现所有纹理。所以这在你的情况下是最好的。

  

SpriteSortMode.Deferred

您可能希望BlendState.AlphaBlend假设您正在使用内容处理器。如果您使用的是Texture2D.FromStream,请使用BlendState.NonPremultiplied。

  

BlendState.NonPremultiplied