【发布时间】:2012-12-14 22:21:54
【问题描述】:
我刚开始使用带有 xna 的像素着色器,但我无法理解一些事情,而且似乎在任何地方都没有明确的答案......
我使用spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend);,我想将着色器应用于我正在绘制的特定精灵,然后将其取消为默认着色器或无着色器。
那么,你能帮我关注一下吗?
如果我在一个效果文件中有多种技术 - 我如何调用特定的一种?因为目前我所做的是:
shaders.CurrentTechnique.Passes[0].Apply();,它适用于一种技术,但我想要很多。如果技术有多个通道,我该如何应用所有通道?
如果我已经应用了着色器,如何取消它?我当然可以结束当前的精灵批次并开始另一个。但我真的不知道是否应该这样做以提高效率。
关于使用像素着色器的任何其他提示?
【问题讨论】: