【发布时间】:2012-01-27 20:49:37
【问题描述】:
这是我的问题 我正在使用深度控制,但现在我有不同的精灵需要不同的混合状态 如果我已经启动 spritebatch.begin(...)
我试图更改 spritebatch.graphicsDevice.blendstate 但它似乎不起作用
我无法将黑色区域变为透明
谢谢
似乎仍然无法使用该代码保存它们之间的图层顺序...
我猜问题可能出在使用 object.draw(spritebatch) 然后在方法内部绘制。
我认为有一个问题,因为我有 2 个类,每个类都有一个带有输入 spritebatch 的 draw 方法
这就是我正在做的事情
spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.Additive);
d.drawAttack(gameTime, spriteBatch);
spriteBatch.End();
spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend);
drawObjects(gameTime, spriteBatch);
charactersDraw(gameTime, spriteBatch); // 与 d.drawAttack 相同的类
spriteBatch.End();
他们都画但图层!在两个 spritebatch 之间!似乎没有任何区别
layerdepth 适用于字符和绘制对象...仅不适用于 drawAttack
【问题讨论】: