Bataille Spatiale

Transcription

Bataille Spatiale
ENSICAEN
6, bd maréchal Juin
F­14050 Caen cedex 4
Spécialité Informatique ­ 2e année
Rapport de projet multimédia
Bataille Spatiale
Star Wars ­ Episode 12487
Imtiaz ALIBAY
Thomas BERGER
Adrien CALENDRON
Luc CANAGUIER
Nicolas DOLEGIEVIEZ
Stéphane DORVAL
Pauline HUET
Alexis LEGRAND
Steve MACAO
Damien SIMONNET
Suivi Ensicaen : François LECELLIER
2008
Table des matières
Introduction................................................................................................................................3
Introduction................................................................................................................................3
1 La création des objets 3D.........................................................................................................4
1.1 Organisation.......................................................................................................................4
1.2 Développement..................................................................................................................6
1.3 Résultats.............................................................................................................................9
2 Réalisation de l’animation......................................................................................................11
2.1 Organisation.....................................................................................................................11
2.2 Développement................................................................................................................11
2.3 Résultats...........................................................................................................................13
Conclusion................................................................................................................................14
Introduction
Ce projet de multimédia consiste en la création d’une scène comportant des objets en trois dimension animés. Notre but dans ce projet est avant tout de se faire plaisir en appliquant tout ce que nous avons pu apprendre pendant les TPs de Multimédia. Il n’a pas été difficile de se mettre d’accord sur le sujet que nous allions traiter. Nous étions déjà 8 personnes à vouloir traiter le même sujet : une bataille spatiale. C’est pourquoi nous avons décidé que le groupe entier de TP constituerait l’équipe du projet. Ainsi, nous avons créé une animation mettant en scène une bataille spatiale dans l’esprit de Star Wars (vaisseaux, style, vues…).
Nous allons présenter les différentes étapes du développement de cette animation : de la création des objets à la mise en commun du travail de toute l’équipe. 3
1 La création des objets 3D
1.1 Organisation
Nous nous sommes mis très vite d’accord sur le thème que nous allions traiter dans ce projet de multimédia. A l’unanimité, il fut convenu que nous élaborerions une bataille spatiale dans l’esprit de Star Wars, en mettant en scène des vaisseaux ressemblant à ceux que l’on peut observer dans les films. Le chef de projet désigné fut Stéphane DORVAL. Son rôle fut de coordonner les différentes tâches, de veiller au respect des consignes et de conseiller sur l’élaboration des objets pour respecter l’esprit « Star Wars ». La première partie du travail fut de définir de façon précise les constituants de la scène afin de nous mettre rapidement au travail. Il a fallu définir les différents vaisseaux que nous devions créer, et la place qu’ils occuperaits. Nous avons également défini leur échelle afin de faciliter l’insertion des objets dans la scène finale.
Ainsi, voici la liste des objets que nous avons créés : le vaisseau mère, un croiseur, des chasseurs dans les deux camps, le Faucon Millenium, l'Etoile Noire et l'ATAT. Puis nous avons partagé ce travail entre les différents binômes.
Imtiaz et Stéphane : le chasseur TIE Bomber.
Thomas, Nicolas et Stéphane : le croiseur Star Destroyer.
Adrien et Luc : le Faucon Millenium.
4
Pauline et Damien : le chasseur X­Wing T65.
Steve: l’Etoile Noire et les tourelles.
Alexis : l’ATAT Walker.
La première séance fut exclusivement réservée à la création de ces objets en 3D.
(cf. Annexe – Planning)
5
1.2 Développement
Le développement des objets 3D s’est fait sous 3D Studio Max. Chaque binôme développa l’objet qu’il avait choisi, indépendamment des autres groupes. Le croiseur Star Destroyer:
Le croiseur a été réalisé en deux parties : Thomas et Stéphane se sont occupés de la partie basse de vaisseau et Nicolas de la partie supérieure.
Nous sommes partis d’une base commune (le demi­triangle principal du squelette du vaisseau), ayant un angle et des dimensions fixées, afin de pouvoir assembler sans soucis les deux parties par la suite. Pour créer la partie basse, nous sommes partis d’une forme pyramidale. Il a fallu ensuite déplacer des vertex pour obtenir la moitié de la forme du vaisseau. Le complément fut réalisé par symétrie. Pour les réacteurs, les formes arrondies dans les cylindres furent réalisées par des booléens tout comme les renfoncements dans la coque. En ce qui concerne la partie supérieure du vaisseau, les seules difficultés rencontrées sont liées à l’utilisation de 3DsMax, notamment pour pouvoir diviser correctement des faces, leur ajouter des vertex.
Une partie commune du travail a ensuite consisté en le positionnement de tourelles sur toute la surface du vaisseau.
Le Faucon Millenium:
Pour modéliser le plus célèbre des vaisseaux de tous les temps, nous avons attaché la plus grande importance à la fidélité de la modélisation 3DSMax. Ses principaux éléments caractéristiques sont représentés: La petite tourelle des lasers manuels, les canons rotatifs, les trappes sur la carlingue.
Réalisation technique:
Comme certains autres vaisseaux de la scène, le Faucon Millenium possède des symétries planaires que nous avons exploitées. Au début nous n'avons pas assez utilisé ces propriétés, nous avons donc recommencé plusieurs fois et surtout compris qu'il faut réfléchir même quelques minutes avant d'agir pour ensuite gagner beaucoup de temps. L'allure générale du Faucon possède deux plans de symétries, nous avons donc modélisé au début qu'un quart de l'appareil. Nous avons utilisé principalement des cylindres que nous avons extrudé, modifié avec des booléens. Nous avons subdivisé le plateau en trois pour plus de précision. La pente a donc été réalisé en trois étapes en sélectionnant les faces de chaque étage puis en les déplaçant à la souris.
Une fois le quart du vaisseau modéliser nous avons effectué les symétries puis nous sommes attaché à la réalisation des éléments cités plus hauts.
Les bonnes idées:
Suite à une démonstration du club infographie, nous avons basé toute notre modélisation sur une image modèle. Une image du Faucon vue de dessus placée dans le plan (Oxy) nous a permis de respecter au maximum les proportions et les formes. Cette technique nous a également permis d'appliquer de manière plus précise les textures.
Les difficultés:
La synthèse des outils que nous avions découvert lors des TP précédents nous a pris du temps au début. Ensuite, en se répartissant les éléments, nous avons pu avancé plus rapidement. Le plus difficile a été l'application des textures à partir d'une image. Nous avons appliqué un modificateur UVW au final.
6
Le TIE Bomber :
La forme du vaisseau est très pratique car globalement, il a suffi de faire la moitié du vaisseau et de le compléter par symétrie, les détails furent ajoutés ensuite. Un cylindre complété par des extrusions forme le cockpit, et une boite dont certains vertex ont été déplacés forme l’aile. L’aspect des fenêtres avant est créé grâce à des extrusions le long des arêtes et par application des textures. Les textures des ailes sont créées à partir d’une image, et celle du reste du vaisseau est de type « métal ». Les deux textures sont mises en même temps avec un modificateur « multi sub­object ». Le X­Wing :
Nous avons séparé la modélisation du xwing en quatre parties : le cockpit, l’aile, le réacteur et le laser. Ces quatre parties ont été réalisées à partir des formes de bases; la boite pour le cockpit et l'aile, et le cylindre pour le réacteur et le laser. L’application des textures est relativement simple pour l’aile, le réacteur et le laser. Cependant, elle fut plus complexe pour le cockpit. Comme pour le réacteur, nous avons attribué un identifiant à chacune des parties du cockpit : le dessus, dessous, les cotés et l’arrière du vaisseau ; mais lors de l’application des textures, on ne distinguait ni le motif du pilote, ni une partie significative de la texture sur l’objet 3D. Nous avons donc procédé par tâtonnement pour voir apparaître un motif ou une partie significative de la texture, puis nous avons ajusté la texture à l’objet 3D.
Une fois le vaisseau terminé et exporté en VRML, nous avons fractionné le fichier VRML en autant de fichiers qu’il y a d’éléments composant le xwing afin de faciliter la réalisation des animations du xwing. En effet, il est plus simple de faire une rotation du réacteur s'il est centré en (0,0,0) que s'il est dans une position quelconque de l’espace. Donc dans le fichier « x­wing.wrl », chaque élément est centré en (0,0,0) et importé grâce à l’instruction « inline »; des translations adaptées permettent de repositionner les éléments du vaisseau à leur place d’origine. Ceci permet d’avoir fichier VRML plus clair et plus simple a manipuler car on voit rapidement de quoi est composé l’objet 3D. Une fois de plus, les coordonnées de textures exportées nous ont posé des problèmes (par exemple, la texture du haut du cockpit se retrouvait sur l’avant du vaisseau), il a donc fallu modifier les fichiers VRML pour bien positionner les textures.
L’Etoile Noire : Elle a été construite à partir d'une sphère à laquelle a été appliqué des opérations booléennes de soustraction et d'union avec des cubes et des sphères, pour obtenir les différentes cavités, plus précisément les tunnels, la zone sphérique centrale, le hangar et le cratère d'où sort le laser. Des cylindres ont été utilisés pour créer les gonds des portes, les tuyaux des tunnels et l'objet central. Certains d'entre eux ont été transformés en objets éditables pour pouvoir déplacer certains points et obtenir la forme voulue. Des assemblages de cônes forment les pics autour du cratère. Les réacteurs de l'Etoile de la mort ont été créés à partir de cubes, cylindres et cônes auxquels ont été appliqué des opérations booléennes et des éditions de forme.Le laser de l'Etoile de la mort est un simple cylindre.
Les tourelles :
Une tourelle est construite à partir de cubes et de cylindres. Des opérations booléennes d'union et de soustraction, et l'édition du cube ont aussi été utilisées pour obtenir la forme de la base et les canons.Les lasers des tourelles sont de simples cylindres.
7
Les planètes:
La planète qui exploseest créée à partir d'une sphère à laquelle est soustraite un cube jusqu'à n'avoir qu'un huitième de la sphère. Ensuite, on duplique ce morceau de sphère pour obtenir les sept autres, et par rotation on recompose une sphère. La planète non détruite est une simple sphère.
Le quadripode Impérial :
Les AT­AT qui meublent l'Etoile Noire. Le corps est un cube extrudé de part et d'autre. Le maillage a été édité pour que chaque coté ressemble à un trapèze, en conservant le cube au milieu. Les pattes sont un mélange de cylindres et de boites que j'ai ensuite groupés. La tête est basée sur un cube extrudé dont le maillage a été édité. Le cou est représenté par un morceau de sphère obtenu par union booléenne avec une sphère. Pour la visière c'était un peu plus compliqué: d'une boite transformée en trapèze par l'édition du maillage, jointe à la tête par union booléenne. Le trou est fait par une extrusion vers l'intérieur. En ce qui concerne l'armement, les lasers du menton sont une union de 2 cylindres, dont l'un a été édité pour obtenir l'aspect tronqué. Les blasters des joues sont à l'origine un cylindre extrudé plusieurs fois (avec redimensionnent des faces à chaque étape).
Il a fallu ensuite trouver des textures appropriées à chaque vaisseau. Heureusement, Star Wars est un sujet qui a été traité par de nombreuses personnes et il a été facile de trouver des textures qui correspondaient à chaque vaisseau. C’est lors de la deuxième séance que les groupes se sont principalement penchés sur ce problème. Exemples de textures utilisées:
8
1.3 Résultats
Voici les résultats obtenus à la suite du travail de chacun :
Le croiseur Star Destroyer:
Le Faucon Millenium :
Le TIE Bomber :
Le X­Wing :
9
Le ATAT – Walker :
L’Etoile Noire :
Externe Interne en coupe
10
2 Réalisation de l’animation
2.1 Organisation
Afin de réaliser l’animation du projet, il a d’abord fallu se concerter sur le rôle de chaque objet 3D dans la scène. Par ailleurs, nous voulions reprendre à peu près les mêmes plans que dans le film pour accentuer l’esprit « Star Wars » du projet (Œuf de pâques : le kamehameha d’un TIE Fighter…). C’est le cas de la scène où l’on voit un croiseur passer au dessus de nos têtes. C’est la toute première scène que les gens ont pu voir pour la première fois en 1977, et c’est pourquoi il était important de l’insérer dans notre projet.
Nous avons ensuite déterminé les animations que nous souhaitions voir apparaître :
­ La destruction d’une planète par l’Etoile Noire.
­ Mouvement des croisseurs.
­ Le croiseur en approche vers l’Etoile Noire.
­ Une petite bataille entre chasseurs.
­ La virée finale du Faucon Millenium.
2.2 Développement
Les animations ont été réalisées avec VRML97 pour la plupart. Quelque unes ont été réalisées sur 3DSMax. Une fois les animations définies, il a fallu définir les types de chacune : nous devions réaliser des animations par boucle (la même animation se répète indéfiniment) et des animations par action (l’utilisateur agit sur la scène).
Voici un descriptif de chaque animation:
Animation 1 : Le croiseur rentre dans l’Etoile Noire et destruction de la planète.
Conformément à la toute première scène de Star Wars, on observe un croiseur avancer vers l’Etoile Noire. Le point de vue le dépasse ensuite pour arriver près de l’Etoile Noire. En changeant les vues, on peut alors voir le croiseur se « garer » et des chasseurs sortir de l'Etoile Noire. (Steve)
Une source lumineuse dont la couleur varie au cours du temps, a été ajoutée au centre pour pouvoir observer l’intérieur de l’étoile, et une dans le hangar de l’étoile. (Steve)
On peut voir quatres tourelles pivoter.(Steve)
Nous avons intégré une animation par action dans cette scène. Lorsque l’utilisateur passe la souris sur l’Etoile Noire, grâce à un « switch » en VRML (lancement d’un fichier à la place de celui qui est en cours), il y a apparition d’un laser qui part du canon principal vers la planète qui explose. (Steve)
On peut aussi observer une petite flotte de croiseurs en manœuvre. (Thomas)
11
Animation 2 : La « bataille ».
Cette animation regroupe tout le travail de chaque groupe. On peut y voir tous les objets réalisés sous 3DSMax agir dans la scène. Nous y avons intégré des animations par boucle et par action :
Les chasseurs TIE (Imtiaz et Stéphane) :
Ils sont capables de tirer des lasers verts (action par boucle) et le « kamehameha » jaune (ce qui explique le crash du x­wing déstabilisé). Ce sont des cylindres fins qui partent du vaisseau et avancent devant ce dernier. Une autre animation par boucle est utilisée pour représenter ces chasseurs qui vont à l’encontre des X­Wings.
Nous avons également inséré une petite patrouille de TIE qui tourne autour de l’Etoile Noire indéfiniment et qui évite de justesse les lasers des tourelles. Le Faucon Millenium (Adrien et Luc) :
Notre vaisseau, le plus rapide de la galaxie, ne possède pas énormément d'animation propre à lui­même. Nous avons simplement réalisé la rotation des tourelles sur la partie supérieure et inférieure du vaisseau.
Le Faucon Millenium (Steve) : L'essentiel de l'animation se rapporte à sa manoeuvre à l'intérieur de l’Etoile Noire. Cette scène symbolise l’attaque du Faucon à la fin de l’Episode VI de la saga.
Le croiseur Star Destroyer (Thomas et Nicolas) :
Il possède deux animations, toutes les deux créées sous 3dsMax et non sous VRML puis exportées dans le format .wrl. La première est une translation toute simple combinée avec une rotation qui donne l’impression que le croiseur est en train de virer. La seconde animation est une translation plus importante que la première et comporte également des tirs de lasers (dix salves de 3 lasers pour toute la durée de l’animation).
Le X­Wing (Pauline et Damien) :
Il possède une animation par action de l’utilisateur. Lorsque l’on clique sur une aile, elles s’ouvrent à la façon du X­Wing ; lorsque l’on clique sur le cockpit, elles se referment. Il y a également une animation par boucle : une escadrille va à l’encontre des chasseurs TIE et les vaisseau se séparent (dispersion) à l’approche des chasseurs ennemis. Le chasseur de tête tente de passer à l’intérieure de la formation des chasseurs TIE. Mais Il perd le contrôle de son appareil et va s’écraser dans sur l’Etoile Noire. Le vaisseau se disloque. Les quatre autres chasseurs évitent le TIE, et tirent en boucle des lasers rouges.
(+ Stéphane et Steve) L’Etoile Noire (Steve) :
Quatres tourelles sont toujours en mouvement et les deux à l'avant de l'Etoile Noire tirent. Les lumières de la première animation sont reprises.
12
Nous avons défini plusieurs vues pour laisser l’utilisateur libre de visualiser la scène sous l'angle qu'il souhaite.
Liste des points de vue :
Vues d’ensemble : vue générale de la scène,
Vue des vaisseaux : certains vaisseaux possèdent des points de vue pour suivre leur mouvement,
Vue des tourelles : deux vues « observateur » depuis les tourelle à l’entrée de l’étoile.
Vue à l’entrée de la bouche de l’Etoile Noire.
Vues de la bataille entre les X­Wing et les TIE.
Vue Intérieure : on peut voir l’intérieur de l’Etoile Noire (hangar). Le développement de l’animation fut plus difficile que la création des objets 3D. En effet, le définition des trajectoires des objets sous vrml pour les translations et les rotations fut très laborieuse Une des difficultés fut d’éviter les collisions entre tous les objets. Par ailleurs le développement sous VRML est si fastidieux qu’il ne nous a pas été possible de respecter le planning. C’est pourquoi nous avons continué l’animation lors de deux séances supplémentaires. 2.3 Résultats
Pour voir les résultats du projet, les fichiers .wrl sont disponibles dans le dossier « sources » ci­joint. Afin de visualiser l’animation, un navigateur Internet possédant les plugings nécessaires à la visualisation de fichiers .wrl vous est nécessaire (« Cortona » pour « Internet Explorer » par exemple).
13
Conclusion
Ce projet fut passionnant notamment parce que nous agissions tous dans l’intérêt commun, et nous étions tous très motivés par le sujet choisi. Il a été très agréable de travailler avec ce groupe. Chacun a donné du sien pour que l’on puisse aller au bout de notre but. Au final, l’animation que nous avons réalisée est beaucoup mieux que ce à quoi nous nous attendions. Nous voulions remercier tout particulièrement Pauline qui a dû supporter notre passion pour Star Wars (vote majoritaire oblige). Merci Pauline ! 14