GRAPHISME PAR ORDINATEUR SIF-1032. Contenu du cours 11 Interaction Joueur/Jeu, effets sonores...

Post on 05-Apr-2015

128 views 0 download

Transcript of GRAPHISME PAR ORDINATEUR SIF-1032. Contenu du cours 11 Interaction Joueur/Jeu, effets sonores...

GRAPHISME PAR ORDINATEUR

SIF-1032

Contenu du cours 11• Interaction Joueur/Jeu, effets sonores

– Interaction clavier– Interaction souris– Interaction manette XBOX– Ajout de sons

Interaction Joueur/Jeu (clavier)

• La classe KeyboardState peut être utilisée pour avoir accès à l’état du clavier

• Nous pouvons ajouter les interaction entre le joueur et le clavier dans la méthode Update():

• Vérifier si la touche left est pressée:

Interaction Joueur/Jeu (clavier)

• Pour savoir si l’état d’une touche a changé dans le temps, nous devons d’abord ajouter une variable d’instance dans la classe principale qui contient l’état au temps -1.

• Dans la méthode Update() nous pouvons alors comparer l’état d’une touche

• Nous pouvons aussi avoir accès à la liste de touches dont l’état a changé

Interaction Joueur/Jeu (clavier)

• Nous pouvons aussi vérifier l’état de combinaisons de touches (ex: Ctrl-C)

Interaction Joueur/Jeu (clavier)

• Code complet:

Interaction Joueur/Jeu (clavier)

• Code complet:

Interaction Joueur/Jeu (souris)

• La classe MouseState peut être utilisée pour avoir accès à l’état de la souris

• Nous pouvons ajouter les interaction entre le joueur et la souris dans la méthode Update():

Interaction Joueur/Jeu (souris)• Pour savoir si l’état de la souris a changé dans le temps, nous devons d’abord

ajouter une variable d’instance dans la classe principale qui contient l’état au temps -1.

• Dans la méthode Update() nous pouvons alors comparer l’état de la souris

• Pour extraire la position du curseur:

Interaction Joueur/Jeu (souris)

• Code complet:

Interaction Joueur/Jeu (souris)

Interaction Joueur/Jeu (souris)

Interaction Joueur/Jeu (manette XBOX)

• Boutons et contrôles

Interaction Joueur/Jeu (manette XBOX)

• La classe GamePadState peut être utilisée pour avoir accès à l’état de la manette XBOX

• Nous pouvons ajouter les interaction entre le joueur et la manette dans la méthode Update():

• Vérifier si la touche X est pressée et la direction du DPad:

Interaction Joueur/Jeu (manette XBOX)

• Nous pouvons ajouter les interactions entre le joueur et la manette dans la méthode Update(). Vérifier si la position en X et Y des thumbstick (-1,1) et celle des triggers (0,1):

Interaction Joueur/Jeu (manette XBOX)

• Pour savoir si l’état de la manette a changé dans le temps, nous devons d’abord ajouter une variable d’instance dans la classe principale qui contient l’état au temps -1.

• Dans la méthode Update() nous pouvons alors comparer l’état d’une touche

Interaction Joueur/Jeu (manette XBOX)

• Pour insérer des effets sonores dans un jeu, nous devons d’abord ajouter une variable d’instance dans la classe principale

• Nous chargeons notre effet sonore dans la classe LoadContent():

• Pour jouer l’effet sonore (méthode Play()):

• Pitch: -1 /+1 octave, pan choix des hauts-parleurs (0: deux)

Interaction Joueur/Jeu (manette XBOX)

• Pour avoir un meilleur contrôle des effets sonores dans un jeu, nous pourrions utiliser la classe SoundEffectInstance: