Simple efecto que es el desvanecimiento de un sprite, y volverlo a aparecer, que fue utilizado en varias intros de juegos 2d.
Para conseguir tal efecto solo se deve cambiar el valor alpha del sprite , asi que lo primero que pensamos es crear un objeto alpha el cual incremente su valor por medio de un contador++,
luego cuando ese valor llege a su maximo que es 255 ,ontonces lo empezamos a disminuir, y asi se mantiene constante el proceso , mediante el game loop.
protected override void UnloadContent(){}
protected override void Update(GameTime gameTime)
{
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
this.Exit();
mFadeDelay -= gameTime.ElapsedGameTime.TotalSeconds;
if (mFadeDelay = 255 || mAlphaValue <= 0)
{
mFadeIncrement *= -1;
}
}
base.Update(gameTime);
}
Luego solamente nos toca dibujar.
protected override void Draw(GameTime gameTime)
{
graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin();
spriteBatch.Draw(mCatCreature, new Rectangle(100,200, mCatCreature.Width, mCatCreature.Height),
new Color(255, 255, 255, (byte)MathHelper.Clamp(mAlphaValue, 0, 255)));
spriteBatch.End();
base.Draw(gameTime);
}
new Rectangle: maneja valores de dimensiones del Sprite.
MathHelper : Para valores matematicos, como pi , radianes, etc.





Comentarios recientes