Développement XNA pour la XBox et le PC
114
}
public void Update()
{
if (color.R < nextColor.R)
color.R++;
else if(color.R > nextColor.R)
color.R--;
if (color.G < nextColor.G)
color.G++;
else if (color.G > nextColor.G)
color.G--;
if (color.B < nextColor.B)
color.B++;
else if (color.B > nextColor.B)
color.B--;
if (color == Color.White)
nextColor = Color.Gray;
else if (color == Color.Gray)
nextColor = Color.White;
}
public void Draw(SpriteBatch spriteBatch)
{
spriteBatch.Draw(texture, position, sourceRectangle, color);
}
}
Dans la classe ChapitreSix, n’oubliez pas d’ajouter l’appel à la méthode Update() de votre
objet sprite.
protected override void Update(GameTime gameTime)
{
sprite.Update();
base.Update(gameTime);
}
Les possibilités d’application de cet effet sont vastes : vous pouvez l’utiliser pour les
boutons de votre GUI, les menus de votre jeu ou encore un système de cycle jour/nuit
dans un jeu en deux dimensions.
Avant de continuer notre découverte des possibilités d’affichage des textures avec XNA,
adaptez votre classe pour qu’elle soit la plus générale possible : enlevez donc la variable
nextColor, ajoutez une propriété pour la variable color et surchargez le constructeur.
La classe Sprite plus générique que la précédente
class Sprite
{
Vector2 position;
=Labat FM.book Page 114 Vendredi, 19. juin 2009 4:01 16
114
}
public void Update()
{
if (color.R < nextColor.R)
color.R++;
else if(color.R > nextColor.R)
color.R--;
if (color.G < nextColor.G)
color.G++;
else if (color.G > nextColor.G)
color.G--;
if (color.B < nextColor.B)
color.B++;
else if (color.B > nextColor.B)
color.B--;
if (color == Color.White)
nextColor = Color.Gray;
else if (color == Color.Gray)
nextColor = Color.White;
}
public void Draw(SpriteBatch spriteBatch)
{
spriteBatch.Draw(texture, position, sourceRectangle, color);
}
}
Dans la classe ChapitreSix, n’oubliez pas d’ajouter l’appel à la méthode Update() de votre
objet sprite.
protected override void Update(GameTime gameTime)
{
sprite.Update();
base.Update(gameTime);
}
Les possibilités d’application de cet effet sont vastes : vous pouvez l’utiliser pour les
boutons de votre GUI, les menus de votre jeu ou encore un système de cycle jour/nuit
dans un jeu en deux dimensions.
Avant de continuer notre découverte des possibilités d’affichage des textures avec XNA,
adaptez votre classe pour qu’elle soit la plus générale possible : enlevez donc la variable
nextColor, ajoutez une propriété pour la variable color et surchargez le constructeur.
La classe Sprite plus générique que la précédente
class Sprite
{
Vector2 position;
=Labat FM.book Page 114 Vendredi, 19. juin 2009 4:01 16
