Création d'un sprite 2D

Création d'un sprite 2D

Dessin vos premiers sprites à l'écran

Création d'un sprite 2D et l'obtenir affiché à l'écran est un processus très rapide et sans douleur en utilisant le framework XNA, donc nous allons commencer!







Création du nouveau projet de jeu:

Tout d'abord, commençons par ouvrir XNA Game Studio Express et la création d'un nouveau projet Windows jeu. Si vous éprouvez des difficultés à se rappeler comment créer un nouveau projet de jeu XNA de Windows il suffit de suivre les étapes de ce tutoriel ici et revenir au ce tutoriel après avoir rafraîchi la mémoire.

Maintenant, nous allons ajouter les images que nous allons utiliser dans ce tutoriel au projet de jeu. Vous pouvez télécharger les images utilisées dans le projet d'ici. Si vous éprouvez des difficultés à se rappeler comment ajouter des images à un projet de jeu XNA, il suffit de suivre les étapes de ce tutoriel ici et revenir à ce tutoriel après avoir rafraîchi la mémoire.

Dessin du Sprite sur l'écran:

Sur le code! Pour commencer, ajoutons une des variables de niveau de classe pour stocker la texture et sa position. Si vous êtes un peu confus par les termes « classe », « variables » ou d'autres termes de codage, maintenant serait un bon moment pour arrêter et tête vers cette FAQ sur les forums du Créateur pour parfaire vos compétences C # codage. Essayer d'apprendre à la fois comment programmer en C # et apprendre comment utiliser le cadre XNA et comment fonctionne le développement du jeu deviendra écrasante vite! Vous aurez pas besoin de devenir un expert C #, mais vous devriez au moins aller apprendre les bases en premier.

Créer des objets

Allez-y et ajoutez ce code en haut de la classe Game1.cs.

Vecteur2 est un objet fourni par le cadre XNA. Il est utilisé pour stocker des informations de position 2D. Texture2D est un autre objet fourni par le cadre XNA. Il est utilisé pour maintenir des images chargées par le Content Pipeline. Les deux objets Vecteur2 et Texture2D seront utilisés beaucoup dans le développement de jeux 2D avec le cadre XNA il est donc bon de devenir très familier avec eux.

Charger le contenu

Maintenant, nous allons aller de l'avant et charger notre texture. Nous allons le faire en ajoutant du code à la méthode « LoadContent ». Vous n'avez pas besoin de créer la méthode « LoadContent », il est déjà créé dans le cadre de votre classe Game1.cs lorsque vous créez votre projet de jeu de Windows. Nous ajouterons simplement une nouvelle ligne de code à cette méthode pour charger notre texture de l'image-objet.

La ligne, nous avons ajouté, utilise le Content Manager pour charger l'image « SquareGuy » nous avons ajouté tot il projeter dans notre objet Texture2D.

Le sprite

Avec l'objet Texture2D chargé, nous pouvons maintenant tirer notre tot il écran de sprite. Tous votre dessin doit être fait dans la méthode « tirage ». Ceci est une autre méthode qui existe déjà dans votre classe Game1.cs. Il est créé lorsque vous créez un nouveau projet de jeu de Windows.

Ajoutez le code suivant à la méthode « tirage ».

L'objet SpriteBatch est automatiquement créé lorsque vous créez un nouveau jeu de Windows. objets SpriteBatch sont ce qui est utilisé pour dessiner des images 2D à l'écran. Pour les utiliser, vous devez d'abord lancer « dessin » en appelant « Begin ».

Ensuite, vous dessinez toutes les images que vous voulez. Dans notre cas, nous sommes actuellement dessin un seul sprite à l'écran, mais certains jeux peut avoir des centaines ou des milliers d'appels « tirage ». Avec notre appel « tirage », on passe dans la texture de l'image-objet nous voulons tirer. La position dans l'écran de jeu que nous voulons tirer dans (notre position actuelle est X = 0 et Y = 0) et la couleur que nous voulons à l'ombre de notre sprite (en utilisant blanc, dit l'objet SpriteBatch que vous ne souhaitez pas appliquer une ombrage à la texture).







Enfin, vous dites l'objet SpriteBatch que vous avez ajouté toutes les choses à la scène que vous voulez dessiné et vous dites à aller de l'avant et de les attirer tout en appelant « Fin ».

Création d'un sprite 2D

Modification de la position du sprite

La position de notre sprite est stockée dans notre objet Vector2 nous avons créé mPosition. Pour dessiner l'image-objet dans un nouvel emplacement, il suffit de changer ces valeurs. Allez-y et jouer avec ces valeurs et de voir comment ils fonctionnent. Changer la position X, la position Y. pour ressembler à ceci lorsque vous modifiez la ligne de code. Où est-il établi?

Modifiez cette ligne de code.

Faire une classe « Sprite »

Sélectionnez « classe » de la « Ajouter un nouvel élément » boîte de dialogue et puis tapez le nom de « Sprite » dans la zone de texte Nom. Cliquez sur le bouton « Ajouter » lorsque vous avez terminé.

Cela ajoutera une nouvelle classe à votre jeu appelé « Sprite » nous allons utiliser cette classe pour créer des objets Sprite dans notre jeu.

Lorsque vous avez créé la nouvelle classe, la fenêtre de code pour la classe aurait dû ouvrir. Nous allons travailler avec des objets XNA Framework, donc nous aurons besoin d'ajouter les énoncés suivants: « à l'aide » au début du fichier de classe.

Ensuite, comme nous l'avons fait dans la classe Game1.cs quand nous apprenons à dessiner une image à l'écran, nous allons ajouter deux objets de stockage à la classe Sprite à utiliser de la même manière.

Nous allons maintenant imiter la classe Game1.cs un peu et créer notre propre méthode « LoadContent » pour notre classe de sprite. Cette méthode fera pour l'image-objet exactement ce que la méthode LoadContent fait pour la classe Game1.cs.

Ajoutez la méthode suivante à la classe Sprite.cs.

Vous pouvez voir que la méthode LoadContent pour notre classe Sprite prend dans certains paramètres. La classe Sprite n'a pas de ContentManager faire son chargement il « demande » pour un. Il veut aussi connaître le nom de l'actif qu'il devrait charger dans son objet Texture2D. Ces deux valeurs seront répercutées lorsque la méthode LoadContent est appelée. Alors maintenant, notre contenu est chargé pour l'image-objet, il nous faut maintenant dessiner. Nous allons copier une fois de plus la façon dont la classe Game1.cs fonctionne et ajouter une méthode « tirage » à notre classe Sprite.

Ajoutez la méthode suivante à la clas Sprite.cs

Étant donné que la classe Sprite ne dispose pas de son propre SpriteBatch (il est une bonne idée d'essayer de limiter le nombre de SpriteBatch objets que vous créez pour votre jeu), la méthode de dessin dans notre classe vous demandera un objet SpriteBatch qu'il doit utiliser pour le dessin lui-même.

Utilisation de la nouvelle classe Sprite

Nous allons maintenant modifier la classe Game1.cs d'utiliser le nouvel objet Sprite, nous avons créé. Pour commencer, supprimez les lignes suivantes de code à partir du haut de la classe Game1.cs.

Maintenant, ajoutez la ligne suivante de code à la classe Game1.cs. Ce sera notre objet Sprite.

Ensuite, nous voulons « créer » notre objet Sprite afin qu'il soit prêt à être utilisé dans notre classe Game1.cs. Pour ce faire, ajoutez la ligne de code suivant à la méthode « Initialiser ». La méthode Initialize est un autre de ces méthodes déjà créées pour vous lorsque vous faites un nouveau jeu de Windows.

Avec notre objet Sprite créé, nous avons maintenant besoin de charger son contenu. Nous le ferons en l'appelant est la méthode LoadContent à partir de la méthode Game1.cs LoadContent. Nous ajouterons une nouvelle ligne de code et en supprimant le code précédent, nous avions écrit dans la méthode LoadContent.

Modifier la méthode LoadContent pour ressembler à ceci.

Appel qui charge l'actif de SquareGuy dans l'objet Texture2D dans notre classe Sprite. Maintenant, nous avons juste besoin de le sprite à l'écran. Pour ce faire, modifier les Game1.cs méthode draw pour ressembler à ceci.

Positionnement de l'objet Sprite

Pour positionner le Sprite, nous allons ajouter une nouvelle ligne de code à la méthode LoadContent (). Modifier la méthode LoadContent () pour ressembler à ceci.

Cela change la position du sprite de sorte que lorsque le Sprite se dessine, il utilise les nouvelles informations de positionnement vous lui avez donné. Vous pouvez également changer juste un individu X et Y ou la position du sprite en écrivant du code comme celui-ci.

Dessin multiples sprites

Maintenant que nous avons notre classe de sprite, en ajoutant un deuxième Sprite au jeu est vraiment facile. Pour ajouter un deuxième sprite, il suffit de suivre les étapes suivantes.

Création d'un sprite 2D

Ca y est, félicitations pour l'obtention de votre premier sprite (et le second!) Dessiné à l'écran! Il pourrait ne pas sembler beaucoup, mais c'est la première étape dans la construction de certains des concepts de base dont vous aurez besoin pour faire votre premier match. Allez-y et expérimenter un peu. Si vous êtes coincé sur quelque chose, prendre un certain temps pour rechercher les forums et voir si vous pouvez comprendre. La plupart de tous, assurez-vous d'avoir du plaisir!







Articles Liés