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 »