XNA 4.0:SpriteBatch引起的地形故障

时间:2013-05-08 16:28:11

标签: xna-4.0 terrain spritebatch visual-glitch

我正在尝试在XNA中实现地形冲突,所以我添加了一些动态文本,允许我测试计算是否正确。在我打电话之前,一切都很好:

spriteBatch.Begin(); spriteBatch.End();

spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend); spriteBatch.End();

使用这些说明地形故障一点点,当我从我的代码中删除这两行时,一切都恢复正常(但这意味着我无法绘制HUD)

任何人都有任何线索可以解决这个问题,我该如何解决?

屏幕:

with sprite batch on

with sprite batch off

1 个答案:

答案 0 :(得分:0)

由于spritebatch改变了图形设备状态......

在绘制地形之前,您应该存储正确的渲染...

通常你必须设置正确的RasterizerState和DepthStencilState。

常用值为RasterizarState.CullNone和DepthStencilState.Default