Proposition de recherche - Cégep de Sainte-Foy

Transcription

Proposition de recherche - Cégep de Sainte-Foy
Vincent Gadoury
Steve Vézina
Prop o s i t i o n d e rec h e r c h e
Travail présenté à monsieur Pierre Poulin
Approfondissements des technologies 3D
420-625-SF
Département d’informatique
Technique de l'informatique
Cégep de Sainte- Foy
17 janvier 2007
Table des matières
1.Le sujet 1
2.L’enjeu 2
3.L’expérimentation 3
4.Les ressources 4
5.Les limites 5
6.L’échéancier 6
Annexe 1 – Fiches de lecture 7
La phy s i q u e dy n a m i q u e de s sq u e l e t t e s ba s é e sur l’alg o ri t h m e de
Verl e t
1.Le suj e t
La recherche sera faite sur les méthodes utilisées pour gérer la physique dynamique des
squelettes, principalement utilisée lors de la mort d’un personnage dans un jeu vidéo.
Nous effectuons cette recherche dans le but d’approfondir nos connaissances sur les méthodes
utilisées et utilisables pour créer une physique dynamique et interactive utilisée pour simuler des
animation de corps rigides dans un jeu vidéo.
Dans le cadre de la recherche, nous utiliserons l’algorithme de Verlet dans une application 3D afin
de tester son fonctionnement et d’animer un squelette dynamiquement en fonction d’un
environnement simple.
Cette méthode est principalement utilisée dans l’industrie des jeux vidéo pour remplacer les
méthodes standards d’animation afin d’effectuer des effets qui interagissent avec l’environnement.
Elle permet entre autre d’effectuer des mouvements de tissus, de plantes, de projectiles et des
effets uniques lorsqu’un personnage tombe au sol en fonction de l’environnement où il se trouve et
des forces qui lui sont appliquées.
Nos connaissances sur les méthodes utilisées sont très restreintes pour le moment. Sauf la
physique simple à laquelle nous avons touché durant d’anciens projets, c’est un sujet que nous ne
connaissions pas et que nous n’avions jamais utilisé.
2.L’e nj e u
De nos jours, le réalisme est un élément très important dans un jeu vidéo qui détermine souvent si
le jeu va bien se vendre. De nouvelles méthodes ont été développées pour ajouter du dynamisme
aux mouvements et aux animations, sans pour autant nuire aux performances. Ainsi, par exemple,
à la place de vêtements bougeant toujours selon la même animation, les jeux récents nous offrent
des effets de tissu réagissant aux mouvements du joueur. Ce type de calcul interactif du
mouvement est largement utilisé car il donne vie au jeu. Avec la puissance des machines de jeu
toujours grandissante, il sera de plus en plus facile de simuler de la meilleure physique
dynamique.
Nous nous attendons à trouver des algorithmes simples et des notions théoriques qui nous
permetterons de développer un prototype afin de tester une physique dynamique abasée sur
l'intégration de Verlet. Les algorithmes et les méthodes que nous apprendrons lors de la
recherche pourront entre autres nous être utiles pour recréer des animations dynamique dans un
jeu vidéo.
De plus, ils pourrons être utilisés dans le futur pour la simulation de végétation dense, de tissu, de
projectile, de suspension sur un véhicule, de corps morts et de corps animés. D'ailleurs, un
modèle hybride entre l'animation classique d'un personnage et la simulation physique complète
peut déjà être imaginé, voire utilisé.
Pour arriver à un résultat utile, il nous faudra chercher des méthodes présentement utilisées,
comprendre la méthode choisie, de son point de vu mathématique à sa programmation, et être
capable de l'appliquer dans un petit prototype. Nous aurons à toucher à des algorithmes de
physique et de mathématique (tel Verlet), à des méthodes de correction d'erreurs et d'application
de contraintes (tel la "relaxation"), à certaines méthodes de détection de collisions, à certains
principes de mécanique newtoniennes et à une étude très basique de l'anatomie humaine.
Cette recherche nous permettra donc de découvrir des méthodes réelles et éprouvées, permettant
de donner vie à tout jeu et pouvant être utilisé dans une multitude de contextes, allant des
énormes jeux 3D des consoles de nouvelle génération à des jeux 2D pour console portable et
applications Web.
3.L’e x p é r i m e n t a t i o n
La recherche sera menée à l’aide d’un prototype d’expérimentation. Le prototype consistera à une
petite application 3D qui nous permettra de tester les algorithmes existants pour mieux
comprendre leur fonctionnement et observer les résultats qu’ils nous donnent.
L’application nous permettra de manipuler un squelette dans un environnement 3D et lui appliquer
des effets de déplacement afin d’observer sa réaction en fonction de son environnement. Nous
pourrons ainsi reproduire toutes sorte d'animation de squelette afin de tester le respect des
contraintes que nous lui appliquons.
Nous pourrons modifier de façon interactive les différentes propriétés (masse, accélération,
vélocité) de chacun des points du squelette afin de voir comment l’algorithme réagit.
Plusieurs contraintes seront appliquées entre les différents points du squelette de sorte à ce qu’il
soit un squelette rigide avec des collisions simples.
Nous aurons la possibilité de contrôler la caméra pour observer la réaction du squelette selon
différents angles. Il sera de plus possible d’arrêter le temps pour nous laisser observer la réaction
réelle de l’algorithme, en fonction des différents critères de correction d’erreurs disponibles dans
notre implémentation.
4.Le s re s s o u r c e s
Ressources matérielles (Ordinateurs de développement)
•
•
•
•
•
•
Système d’exploitation : Windows XP Pro
Mémoire vive : 2 Go
Processeur : 2 GHz
Carte graphique : Nvidia GForce 6600
Accès Internet haute vitesse pour la recherche d’informations
Souris avec roulette
Ressources logicielles
•
•
•
•
•
DirectX 9.0c
Visual Studio 2005
Mozilla Firefox 2.0
CamStudio 2.0
Notepad
Ressources documentaires
Lors de la recherche, des fiches de lectures seront utilisées pour noter les sources et l'information
pertinente. Voir les ressources déjà trouvées et leur fiche de lecture en annexe.
De plus, nous ferons des liens avec certaines vidéos externes pour démontrer des effets et des
utilisations des méthodes explorées. En voici quelques- unes :
http://www.youtube.com/watch?v=KModFRhIpec
http://www.youtube.com/watch?v=gbuA-HEbROk
http://www.youtube.com/watch?v=nM61- k8exf0
5.Le s limit e s
Dans le but de limiter et de cibler la recherche, voici une liste d'élément qui ne s er o n t pa s
co u v e r t par celle-ci :
•
•
•
•
•
•
•
•
Les systèmes complexes de collision et les collisions convexes;
Les particules et os avec volume;
Les effets de friction et de force complexes;
Les corps élastiques;
L'application d'un modèle 3D à un squelette;
Les animations de squelette et les systèmes cinématiques (kine m a tic s );
La résistance musculaire dans un squelette;
L'expérimentation développée fonctionnera au minimum sur les machines utilisées
pour le développement (voir la section sur les ressources).
6.L’é c h é a n c i e r
Voici l’échéancier qui contient le nombre d’heures de recherche par étudiants.
Dat e
De s cri p t i o n
Dur é e
15 janvier
Sélection d’un sujet de recherche
1
16 janvier
Élaboration de la proposition de recherche.
4
17 janvier
Élaboration de la proposition de recherche. (Remise 1 –
Proposition de recherche)
2
18 janvier
Devis du protocole expérimental.
5
19 janvier
Devis du protocole expérimental.
5
22 janvier
Collecte de données et travail expérimental. (Remise 2 –
Devis du protocole expérimental)
5
29 janvier
Collecte de données et travail expérimental.
8
31 janvier
Collecte de données et travail expérimental.
8
5 février
Collecte de données et travail expérimental.
8
7 février
Fin du travail expérimental et publication de la recherche.
(Remise 3 – Outils d’expérimentation)
9
12 février
Publication de la recherche et préparation de la
présentation orale.
7
14 février
Publication de la recherche et préparation de la
présentation orale.
7
15 février
(Remise 4 – Publication Web)
0
16 février
Présentations orales.
0
Total : 71 heures
Ann e x e 1 – Fich e s d e lec t u r e
•
Voir archive « FichesDeLecture.zip »