Devoir Bonus / Alternative

Jeu gravity

Mettez en œuvre d'un jeu de type puzzle dont le but est de placer une sphère située sur une surface plane à un certain point de cette surface en utilisant uniquement l’inclinaison de la surface de jeu.

Ces jeux sont très populaires sur les appareils mobiles, car ils peuvent utiliser l'accéléromètre du téléphone pour déterminer l'inclinaison de la surface plane. Un exemple d'un tel jeu est Teeter.

Le thème implique la mise en œuvre d'une version simplifiée du jeu. La scène est composé de:

  • Un parallélépipède représentant la surface plane de jeu –qui sera inclinée par le joueur pour rencontrer l’objectif du jeu
  • Une sphere - l'objet contrôlé par l’inclinaison de la surface de jeu
  • Un cube représentant le point ou il doit porter la sphère pour gagner le jeu

Pour plus de simplicité, nous definissons quatre possibles pentes de la surface de jeu, chacun commandé par une touche. (Appuyer sur une touche tourne la surface de jeu - et donc les objets sur cette surface - la sphère et le cube - avec un angle fixe, quel que soit le nombre de touches).

Dans l'exemple de la figure ci-dessous, en rouge il est attirée la surface plane de jeu, la sphère qui sera contrôlé par l'inclinaison de la surface de jeu est tracé en vert, et le cube bleu représente la position ou la sphère doit être déplacé à la fin du jeu.

Figure 1: Exemple de scène de jeu

Dans l'exemple illustré, nous avons défini comme ça:

  • Rotation d'angle négatif autour de l’axe OX (touche W)
  • Rotation d'angle négatif autour de l’axe OX (touche S)
  • Rotation d'angle négatif autour de l’axe OZ (touche A)
  • Rotation d'angle négatif autour de l’axe OZ (touche D)
  • Retour à la position initielle: touche R

Important est le résultat visuel, les rotations et les axes presentees ici sont choisis par exemple, ils ne doivent être pas respectés exactement - aussi longtemps que vous obtenez le même effet.

Dans l'image ci-dessous nous représentions les trois axes du système de coordonnées global, pour simplifier les explications. Dans votre mise en œuvre il n’est pas necessaire de tirer les trois axes.

Figure 2: Exemple de scène de jeu, pour simplifier les explications on a considère l'axe Oz en rouge, l’axe Ox en bleu, et l’axe Oy en vert

L'utilisateur contrôle les mouvements sphère en inclinant la surface de jeu, ce qui détermine le mouvement de la sphère par gravité. Dans les images suivantes, la flèche noire indique la direction du déplacement de la sphère. Ainsi:

  • La touche W incline la surface de jeu autour de l'axe Ox – comme dans la figure si-dessous:

Figure 3: Inclinaison de la sourface de jeu autour de l'axe Ox à la touche W

L'inclinaison dans la direction opposée sera obtenu à la touche S, comme indiqué ci-dessous.

Figure 4: Inclinaison de la sourface de jeu autour de l'axe Ox à la touche S

Pour les touches A et D, l'inclinaison du plan autour de l’axe Oz.

Figure 5: Inclinaison de la sourface de jeu autour de l'axe Oy à la touche A

Figure 6: Inclinaison de la sourface de jeu autour de l'axe Oy à la touche D

Exigences

  • Dessinez la scène
  • Placement du plan (avec des objets placés sur le plan - la sphère et le cube destination) à l'angle correspondant en fonction de la touche pressée
  • Déplacement de la sphère sur le plan, selon son inclinaison (la vitesse est constante)
  • Eclairage Gouraud sur la sphère et le plan

Bonus

  • Ajouter des obstacles pour arrêter le mouvement de la sphère;
  • Collection d'objets qui ajoutent des points; des niveaux;
  • Tourner les objets de la scène autour de son centre; etc.
egc/teme/fr/2018/04.txt · Last modified: 2019/01/09 09:49 by alexandru.gradinaru
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0