XNA SpriteBatch忽略我的筛选选项?
我对XNA SpriteBatch对象有问题 当我在其他元素前面绘制半透明的元素时,其他元素将完全隐藏,直到半透明元素完全透明为止。这真的很令人沮丧,因为我正在尝试做一个淡入淡出的效果 Batch.Instance.SpriteBatch.Begin(SpriteSortMode.Deferred,BlendState.AlphaBlend,samplestate.LinearClamp,DepthStencilState.Default,RasterizerState.CullNone,null) 这就是我开始SpriteBatch的方式。如您所见,我将其设置为CullNone,但它似乎仍然执行Z消隐XNA SpriteBatch忽略我的筛选选项?,xna,xna-4.0,sprite,Xna,Xna 4.0,Sprite,我对XNA SpriteBatch对象有问题 当我在其他元素前面绘制半透明的元素时,其他元素将完全隐藏,直到半透明元素完全透明为止。这真的很令人沮丧,因为我正在尝试做一个淡入淡出的效果 Batch.Instance.SpriteBatch.Begin(SpriteSortMode.Deferred,BlendState.AlphaBlend,samplestate.LinearClamp,DepthStencilState.Default,RasterizerState.CullNone,nul
如何防止这种情况发生?Z-culling是
DepthStencilState
的属性。要关闭它,您需要使用DepthStencilState.None
。由光栅化状态执行的消隐是按三角形缠绕顺序执行的
不能使用具有透明度的深度缓冲区。您可以使用alpha测试作为“alpha切口”的解决方案。但是,对于半透明对象(如淡入淡出时),仅可选择按深度顺序绘制它们
我已经向你建议过了。你从来没有回答过我的问题:你到底为什么要那样画你的GUI
有关详细信息: Z-culling是
DepthStencilState
的一个属性。要关闭它,您需要使用DepthStencilState.None
。由光栅化状态执行的消隐是按三角形缠绕顺序执行的
不能使用具有透明度的深度缓冲区。您可以使用alpha测试作为“alpha切口”的解决方案。但是,对于半透明对象(如淡入淡出时),仅可选择按深度顺序绘制它们
我已经向你建议过了。你从来没有回答过我的问题:你到底为什么要那样画你的GUI
有关详细信息: