Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
GRAPHISME PAR ORDINATEUR
SIF-1032
2
Contenu du cours 10 Graphisme 2D (SpriteBatch, texture)
SpriteBatch (utilisation de la classe SpriteBatch) Textures multiples (animation 2D) Rotation de textures Superposition et transparence de textures Engin de particules
3
Graphisme 2D (SpriteBatch, texture)
La classe SpriteBatch peut être utilisée pour introduire et animer des textures dans une scène. Les textures 2D sont en fait des images 2D qui peuvent être insérées dans notre scène Pour permettre l’utilisation de textures il faut d’abord réserver l’espace pour stocker les images 2D par ces déclarations dans la classe de notre jeu: Ensuite nous pouvons charger nos textures dans la méthode LoadContent():
4
Graphisme 2D (SpriteBatch, texture)
Déclaration d’une classe SpriteBatch et instantiation de la classe SpriteBatch dans la méthode LoadContent() Pour dessiner une texture avec la méthode Draw() de la classe SpriteBatch appelée dans la méthode Draw() de notre jeu:
5
Graphisme 2D (SpriteBatch, texture)
Affichage du background
6
Graphisme 2D (SpriteBatch, texture)
Ajout d’autres textures en utilisant un mode d’affichage différent
7
Graphisme 2D (SpriteBatch, texture)
Ajout d’autres textures en utilisant un mode d’affichage différent (Affichage)
8
Graphisme 2D (SpriteBatch, texture)
Nous pouvons animer des objets 2D en utilisant différentes images du même objet à des positions différentes que nous affichons ensuite en séquence. Une série d’images du même objet peut être associée à un atlas de textures. Un atlas de textures est une grande image de toutes les textures impliquées dans l’animation
9
Graphisme 2D (SpriteBatch, texture)
Pour créer une animation à partir d’un atlas de textures nous devons d’abord créer une nouvelle classe (ex: AnimatedSprite.cs) Ajout des énoncés using suivants: Ajout des variables d’instance:
10
Graphisme 2D (SpriteBatch, texture)
Code de la méthode Update(): Code la méthode Draw(): width et height sont les largeur et hauteur de la texture Columns et Rows la largeur et hauteur de l’atlas de texture row et colomn les indices de la texture dans l’atlas
11
Graphisme 2D (SpriteBatch, texture)
Code de la classe AnimatedSprite:
12
Graphisme 2D (SpriteBatch, texture)
Utilisation de la classe AnimatedSprite (Insertion dans la classe principale de notre jeu) Chargement de l’atlas de texture et instantiation de la classe AnimatedSprite Mise à jour de la texture (sélection de la texture) par la méthode Update() de la classe AnimatedSprite Appel de la méthode Draw() de la classe AnimatedSprite
13
Graphisme 2D (SpriteBatch, texture)
Affichage de l’atlas de textures
14
Graphisme 2D (SpriteBatch, texture)
Code de l’application
15
Graphisme 2D (SpriteBatch, texture)
Code de l’application (suite…)
16
Graphisme 2D (SpriteBatch, texture)
Si nous voulons faire la rotation d’un texture, nous pourrions ajouter à la section déclaration de notre classe principale Charger la texture dans la méthode LoadContent() Faire la mise-à-jour de l’angle dans la méthode Update()
17
Graphisme 2D (SpriteBatch, texture)
Affichage d’une texture avec une rotation avec la méthode Draw()
18
Graphisme 2D (SpriteBatch, texture)
Les effets de superposition de couleur et de transparence permettent de superposer des objets. Si nous utilisons un modèle de superposition additif nous pourrions avoir comme mélange de couleur:
19
Graphisme 2D (SpriteBatch, texture)
Création et Chargement de textures permettant la superposition de couleur (exemple) Pour permettre le mouvement de ces textures
20
Graphisme 2D (SpriteBatch, texture)
Mise-à-jour des angles (Update()) et positions des textures et affichage des textures (Draw())
21
Graphisme 2D (SpriteBatch, texture)
Affichage de textures superposées
22
Graphisme 2D (SpriteBatch, texture)
Création d’un engin de particules, création d’une classe Particule, déclaration des variables d’instance de cette classe
23
Graphisme 2D (SpriteBatch, texture)
Classe Particule, méthode Update(), méthode Draw() Une particule se déplace et subit une rotation ainsi qu’une durée de vie décroissante (TTL--)
24
Graphisme 2D (SpriteBatch, texture)
Code la classe Particule
25
Graphisme 2D (SpriteBatch, texture)
Création d’un engin de particules, création d’une classe ParticuleEngine, déclaration des variables d’instance de cette classe, code du constructeur de cette classe
26
Graphisme 2D (SpriteBatch, texture)
Code du générateur de particule de la classe ParticuleEngine
27
Graphisme 2D (SpriteBatch, texture)
Code de la méthode Update() de la classe ParticuleEngine
28
Graphisme 2D (SpriteBatch, texture)
Code de la méthode Draw() de la classe ParticuleEngine
29
Graphisme 2D (SpriteBatch, texture)
Code complet de la classe ParticuleEngine
30
Graphisme 2D (SpriteBatch, texture)
Code complet de la classe ParticuleEngine (suite …)
31
Graphisme 2D (SpriteBatch, texture)
Création d’une instance de la classe ParticuleEngine , chargement des textures (particules) par la méthode LoadContent(), mise-à-jour du générateur de particules dans la méthode Update():
32
Graphisme 2D (SpriteBatch, texture)
Affichage découlant de l’exécution du générateur de particules
33
Graphisme 2D (SpriteBatch, texture)
Code complet du jeu
34
Graphisme 2D (SpriteBatch, texture)
Code complet du jeu (suite …)
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.