Sujet BL1 : Simulateur de comportement réactif Bernard Clément Barelli Nicolas Maitrehut Loïc...

Preview:

Citation preview

Sujet BL1 : Simulateur de comportement réactif

Bernard ClémentBarelli Nicolas

Maitrehut Loïc

Ould Sidina Mahi

Encadrant : Mr Michel Buffa

Introduction

• La mettre photo war 3

• Mettre annotation pour expliquer

Choix et motivations

• Algorithmes nouveaux et amusants

• Existant riche et passionnant– Site web de craig reynolds plein d’applets

incroyables ! (SCREENSHOTS !)

Plan

1. Étude et choix des comportements2. Outils développés

– Implémentation d’un simulateur pour tester les comportements et régler leurs paramètres

– Développement d’un jeu complet

3. Organisation du travail4. Synthèse et conclusion

Étude et choix des comportements

Les comportements Locaux

• Les comportements locaux (basés sur le champ de vision):

– Éviter un obstacle– Se nourrir– Fuir– Attaquer– Suivre un ami

Ici screenshot arène vue de dessus avec grille + champs de vision

Les comportements locaux (suite)

• Principe : choisir onction d’une direction et une vitesse à un instant donné

• Fonction d’évaluation propre à chaque comportement– On peut fusionner plusieurs comportements

Ici bonhomme vu de dessus avec champs vision + un obstacle à droite, + les directions numérotées et à droite la courbe…

Sans éviter obstacle

Avec éviter obstacles

Les comportements

• Les comportements globaux

– Algorithme de calcul du plus court chemin A*

– Suivre des points de passages (way-points)

Video sans a*

Video avec a*

Le simulateur (outil de debug/réglage)

L’arène de simulation

Planning

Planning Initial

1) Réflexion général (1 semaine) :• Architecture du projet (4 étudiants)

2) Implémentation de l’ossature (1 semaine) :• Ossature (2 étudiants)• Boîte à outils (1 étudiant)• Animateur (2 étudiants)

3)Développement de comportements(3 semaines):• Implémentation de comportements (4 étudiants)• Éditeur (2 étudiants)• Interface graphique finale (2 étudiants)

Changement de Planning

• Raisons :• Problème de structure

• Manque de définitions

• Anticiper le retard

Changement de Planning

• Remaniement Interface graphique

• Remaniement boîte à outils

• Remaniement comportements

• Pensez à entretenir la structure

Travail personnel

Barelli nicolas

30%

32%

10%

15%13%

Architecture

Implementationcomportement

Simulateur

Animateur

Arene

Bernard Clement

50%

20%

30%

Graphisme

Editeur Niveau

Arene

Maitrehut Loic

30%

50%

20%

EtudecomportementImplementationcomportementStructure

Ould mahi Sidina

25%

75% Etudecomportement

Implementationcomportement

Synthèse

• Synthèse– Projet fonctionnel, vous pouvez le télécharger et le faire tourner, y’a des scénarios tout prêts

dans la distribution, cahier des charges respecté !– On a fait une « vraie » distribution (scripts ant, documentation, exemples, tutoriaux pour

l’écriture de plugins, etc… tout est sur twiki),– Plus clairs que les sources des démos de Craig Reynolds !– Nécessite un PC puissant si on met en action beaucoup de personnages et un univers

complexe.

• Difficultés rencontrées– Algorithmes simples à comprendre mais difficiles à implémenter, nombreuses ruses (pré

calcul de toutes les fonctions d’évaluation des trajectoires en fonction des diverses configuration)

– Cahier des charges peu précis, donc, on a dû l’afficher et éviter d'être trop ambitieux .– Surtout ne rajouter pas des choses inutiles en plein milieu du développement.– On aurait dû utiliser CVS, mais finalement grâce à l’architecture de plug-ins le découpage

était très clair et nous n’avons pas eu de problèmes pour fusionner nos parties…

Conclusion• Ce que le projet nous a apporté

– Connaissance de Java sur un gros projet (une centaine de classes, 15000 lignes de code…)

– Travail en équipe,– Obligation de communiquer,– Aperçu d’un travail moins scolaire…

• Ce que nous avons aimé– Le thème du sujet,– La liberté sur la forme de l’application,– La puissance de la technologie des plugins,– Le Twiki,

• Ce que nous n’avons pas aimé– La liberté du sujet…

Demonstration

La barre d’outil

nouveau

Ouvrir

Enregistrer

Lecture

Pause

Recharger

S.unique

S.Multiple

Ajouter

Supprime

Aide

Quitter

Le panneau d’information

Recommended