Ich habe in ein Problem laufen, wo die SpriteBatch nicht mit geänderten Alpha der angegebenen "Trail" zeichnen. Was ich versuche zu tun, ist ein "Fade-Effekt", wo das Alpha von "Item" abnimmt, so dass es mehr transparent wird, bis es schließlich zerstört wird. Es ändert jedoch nicht das Alpha auf sie? Der Alphawert nimmt zwar ab, aber der Alphawert der Farbe wird nicht verändert, er bleibt gleich und verschwindet dann.
Das passiert folgendermaßen: http://dl.dropbox.com/u/14970061/Untitled.jpg
Und das ist es, was ich zu tun versuche http://dl.dropbox.com/u/14970061/Untitled2.jpg
Hier ist ein Ausschnitt des entsprechenden Codes, den ich im Moment verwende.
spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.AlphaBlend);
for (int i = 0; i < Trails.Count; i++)
{
Trail Item = Trails[i];
if (Item.alpha < 1)
{
Trails.RemoveAt(i);
i--;
continue;
}
Item.alpha -= 255 * (float)gameTime.ElapsedGameTime.TotalSeconds;
Color color = new Color(255, 0, 0, Item.alpha);
spriteBatch.Draw(simpleBullet, Item.position, color);
}
spriteBatch.End();