Les environnements virtuels 3D

Les environnements virtuels 3D sont des applications de rรฉalitรฉ virtuelle qui ont, au fil des annรฉes, gagnรฉ en nombre et en diversitรฉ dโ€™usages. Cette technologie a en effet trouvรฉ des applications dans divers domaines qui vont du divertissement ร  des usages professionnels de haute prรฉcision. Leur diversitรฉ et leur nombre posent un problรจme pour lequel il nโ€™existe pas de solution universelle : lโ€™impossibilitรฉ de communiquer dโ€™un environnement virtuel ร  un autre. Il est en effet extrรชmement difficile dโ€™รฉchanger des donnรฉes entre deux environnements virtuels mais รฉgalement dโ€™accรฉder ร  plusieurs environnements virtuels par lโ€™intermรฉdiaire dโ€™une mรชme application cliente.

Cet รฉtat de fait pose de nombreux problรจmes qui freinent la diffusion et lโ€™adoption des environnements virtuels 3D :
โ€“ la rรฉutilisation de donnรฉes : lโ€™impossibilitรฉ dโ€™รฉchanger et de partager directement des donnรฉes dโ€™un environnement virtuel ร  un autre empรชche la rรฉutilisation des donnรฉes et plus prรฉcisรฉment des contenus des environnements virtuels. En effet, bien quโ€™il existe une large offre dโ€™outils permettant de produire des contenus 3D, ceux-ci sont plus ou moins intuitifs ร  manipuler. Il est donc trรจs intรฉressant de pouvoir rรฉutiliser des modรจles existants car leur rรฉalisation est une tรขche coรปteuse et consommatrice de temps ;
โ€“ la rรฉutilisation et lโ€™interchangeabilitรฉ des composants : de mรชme quโ€™il est pratiquement impossible de rรฉutiliser directement des contenus 3D, il en va de mรชme pour les composants logiciels qui permettent de gรฉnรฉrer lโ€™environnement virtuel. Ceux-ci sont en effet compatibles avec un petit sous-ensemble dโ€™autres composants et de contenus 3D ce qui limite leur rรฉutilisation dans un autre environnement virtuel. Il est par consรฉquent souvent nรฉcessaire de dรฉvelopper de nouveaux composants pour chaque environnement virtuel ce qui majore encore leur coรปt et leur temps de production ;
โ€“ le recours ร  la conversion : une solution couramment utilisรฉe pour rรฉutiliser les contenus et les composants consiste ร  convertir les donnรฉes utilisรฉes mais la conversion est souvent synonyme dโ€™erreurs et de pertes de donnรฉes qui peuvent rendre les contenus convertis inexploitables ;
โ€“ les problรจmes de portage : le manque dโ€™interopรฉrabilitรฉ pose aussi problรจme lorsquโ€™un environnement virtuel doit รชtre portรฉ sur un autre systรจme (nouveau client ou nouveau terminal) ;
โ€“ les difficultรฉs dโ€™accessibilitรฉ : les environnement virtuel 3D sont gรฉnรฉralement accessibles au travers dโ€™une application cliente qui leur est gรฉnรฉralement propre. Pour accรฉder ร  un autre environnement virtuel, il est nรฉcessaire dโ€™utiliser une autre application cliente. Lโ€™interopรฉrabilitรฉ permet de rรฉsoudre tous ces problรจmes de faรงon ร  accroรฎtre et ร  simplifier lโ€™utilisation des environnements virtuels 3D. Il faut cependant distinguer lโ€™interopรฉrabilitรฉ entre les applications des environnements virtuels 3D et lโ€™interopรฉrabilitรฉ entres les composants des environnements virtuels 3D. Nous nous intรฉressons ici au second cas, nous cherchons ร  proposer une solution pour lโ€™interopรฉrabilitรฉ entre les contenus et les composants logiciels des environnements virtuels 3D mais aussi entre les contenus eux-mรชmes et entre les composants logiciels eux-mรชmes.

QUโ€™EST CE QUE Lโ€™INTEROPร‰RABILITร‰ ?ย 

Dร‰FINITION

Le terme ยซย interoperabilityย ยป est apparu en 1977 et vient de la contraction de deux mots ; ยซย interย ยป mot latin signifiant ยซย entreย ยป et ยซย operabilityย ยป qui pourrait รชtre traduit par ยซย utilisableย ยป. Le terme anglais ยซย interoperabilityย ยป a รฉtรฉ traduit par interopรฉrabilitรฉ mais une traduction plus proche de sa signification originelle serait interutilisabilitรฉ. Cโ€™est une notion que lโ€™on retrouve aujourdโ€™hui dans de nombreuses branches de lโ€™informatique. On dit que deux systรจmes sont interopรฉrables lorsque ceux-ci peuvent fonctionner et communiquer ensemble sans quโ€™il soit nรฉcessaire de modifier lโ€™une ou lโ€™autre des parties au prรฉalable. Il faut faire la distinction entre lโ€™interopรฉrabilitรฉ et la compatibilitรฉ. Lโ€™interopรฉrabilitรฉ entre deux systรจmes, ร  lโ€™inverse de la compatibilitรฉ, nรฉcessite que ces deux systรจmes puissent partager des donnรฉes ou des ressources sans restriction dโ€™accรจs. Deux systรจmes peuvent รชtre compatibles sans pour autant donner un accรจs direct ร  leurs donnรฉes ou ร  leurs ressources comme cโ€™est le cas lorsque deux systรจmes propriรฉtaires collaborent. Ils peuvent รชtre utilisรฉs conjointement mais une interface bloque lโ€™accรจs direct ร  leurs donnรฉes respectives.

LES ENJEUX DE Lโ€™INTEROPร‰RABILITร‰ย 

Lโ€™interopรฉrabilitรฉ dans le monde de lโ€™informatique est une notion cruciale. Elle est souvent dรฉterminante pour lโ€™adoption dโ€™une nouvelle technologie et est รฉgalement un gage de pรฉrennitรฉ dans un domaine qui รฉvolue extrรชmement vite. Le succรจs du modรจle du Web en est un bon exemple car il est en grande partie liรฉ ร  son interopรฉrabilitรฉ. En effet, la capacitรฉ du Web ร  pouvoir รชtre accessible avec nโ€™importe quel navigateur, sur nโ€™importe quelle machine a permis une adoption massive et rapide de cette technologie. La notion dโ€™interopรฉrabilitรฉ est souvent liรฉe ร  la mise en place de normes qui vont contraindre les dรฉveloppements futurs. Les rรจgles dรฉfinies dans la norme vont permettre dโ€™assurer lโ€™interopรฉrabilitรฉ entre deux entitรฉs dรฉveloppรฉes dans des contextes diffรฉrents. Lโ€™adoption dรจs sa crรฉation du format HTML et du protocole HTTP sont les normes qui ont structurรฉ le dรฉveloppement du Web. De ce fait, il est parfois reprochรฉ ร  lโ€™interopรฉrabilitรฉ de limiter les innovations techniques car les contraintes imposรฉes brident les nouveaux dรฉveloppements. Cependant, ร  lโ€™inverse, le manque dโ€™interopรฉrabilitรฉ peut mener ร  une situation de monopole, elle aussi nรฉfaste ร  lโ€™innovation. En effet si un produit non interopรฉrable est adoptรฉ massivement cela peut bloquer les innovations concurrentes. Lโ€™interopรฉrabilitรฉ est ainsi une situation souhaitable dans la majoritรฉ des cas mais celle-ci ne doit pas se faire au prix dโ€™un blocage des รฉvolutions potentielles dโ€™un systรจme. Si lโ€™on rapporte cette notion aux environnements virtuels, elle se traduit par la possibilitรฉ de permettre ร  une entitรฉ dโ€™interagir avec un environnement virtuel diffรฉrent de celui pour lequel elle a รฉtรฉ conรงue. Lโ€™interopรฉrabilitรฉ des environnements virtuels 3D permettrait non seulement de rรฉutiliser directement les contenus et les composants des environnements virtuels existants sans les convertir mais รฉgalement de capitaliser les fonctionnalitรฉs et les avantages de chacun pour crรฉer des environnements virtuels plus riches et plus performants. Ceci amรฉliorerait significativement la production des environnements virtuels mais faciliterait รฉgalement leur utilisation. Lโ€™interopรฉrabilitรฉ des environnements virtuels 3D rendrait en effet possible la navigation et lโ€™interaction avec une multitude dโ€™environnements virtuels en utilisant un client de visualisation unique.

PRร‰SENTATION DES ENVIRONNEMENTS VIRTUELS 3D

La terminologie utilisรฉe pour la notion dโ€™environnement virtuel est รฉtendue dans la littรฉrature. On parle couramment dโ€™environnement virtuel, de monde virtuel, dโ€™espace virtuel ou dโ€™univers virtuel. Tous ces termes englobent des notions similaires mais cependant nuancรฉes qui ont trait ร  la rรฉalitรฉ virtuelle. La dรฉfinition de la rรฉalitรฉ virtuelle qui fait rรฉfรฉrence et sur laquelle nous nous basons dans ces travaux est celle proposรฉe dans ยซย Le Traitรฉ de la Rรฉalitรฉ Virtuelleย ยป [FMB+06] :

Dรฉfinition 1.1 La rรฉalitรฉ virtuelle est un domaine scientifique et technique exploitant lโ€™informatique et des interfaces comportementales en vue de simuler dans un monde virtuel le comportement dโ€™entitรฉs 3D, qui sont en interaction en temps rรฉel entre elles et avec un ou des utilisateurs en immersion pseudo-naturelle par lโ€™intermรฉdiaire de canaux sensori-moteurs.

Les termes de monde virtuel, espace virtuel, univers virtuel et environnement virtuel sont similaires et dรฉsignent le monde simulรฉ dans une application de rรฉalitรฉ virtuelle. On peut nรฉanmoins constater quelques nuances en fonction du contexte dโ€™utilisation et notamment de la communautรฉ visรฉe par ce contexte. Certaines communautรฉs prรฉfรฉreront utiliser le terme dโ€™environnement virtuel alors que dโ€™autres parleront systรฉmatiquement de monde virtuel. En effet lโ€™un ou lโ€™autre de ces termes peut รชtre prรฉfรฉrรฉ selon lโ€™รฉtendue et le rรฉalisme du monde simulรฉ : deux propriรฉtรฉs qui permettent de caractรฉriser le monde. Dans le contexte de cette thรจse, nous avons choisi dโ€™utiliser le terme dโ€™environnement virtuel 3D car sa signification est suffisamment vaste pour englober lโ€™ensemble des applications 3D auxquelles les travaux prรฉsentรฉs ici sโ€™appliquent.

Selon les fonctionnalitรฉs demandรฉes par la finalitรฉ de lโ€™application de rรฉalitรฉ virtuelle, un environnement virtuel 3D peut possรฉder les caractรฉristiques suivantes :
– lโ€™utilisateur peut y avoir une reprรฉsentation sous forme dโ€™avatar ;
– lโ€™utilisateur peut y crรฉer de nouveaux objets ;
– lโ€™utilisateur peut interagir avec dโ€™autres utilisateurs ;
– lโ€™environnement peut simuler dโ€™autres sens humains (lโ€™ouรฏe et le toucher notamment) ;
– lโ€™environnement peut รชtre partagรฉ ;
– lโ€™environnement peut รชtre persistant.
Dโ€™autre part, un environnement virtuel 3D est plus ou moins complexe et nรฉcessite la mise en ล“uvre de nombreuses techniques qui vont permettre dโ€™optimiser le compromis entre rรฉsultat souhaitรฉ et capacitรฉ du matรฉriel informatique ciblรฉ. En effet, ce dernier รฉtant plus ou moins puissant, il ne permet pas toujours de rรฉaliser la totalitรฉ des spรฉcifications demandรฉes lors de la conception.

CLASSIFICATION DES ENVIRONNEMENTS VIRTUELS 3D

LES JEUX VIDร‰OS

Le divertissement est historiquement lโ€™un des premiers usages des environnements virtuels. Il est donc logique que le domaine des jeux vidรฉos soit le principal crรฉateur dโ€™environnement virtuel 3D de nos jours. Les diffรฉrents jeux vidรฉo proposent plus ou moins de fonctionnalitรฉs selon le type de jeu pour lequel ils ont รฉtรฉ crรฉรฉs. Les principaux types de jeux vidรฉo sont :
– les jeux de tirs subjectifs ou FPS (First-Person Shooters ) : le point de vue est celui de lโ€™utilisateur qui est, en gรฉnรฉral, un personnage muni dโ€™une arme. (Exemple : Quake, Unreal Tournament, Half-Life, …). Dans ces jeux, le monde est visuellement trรจs rรฉaliste et relativement รฉtendu.
– les jeux de plateforme : ce sont les jeux dont lโ€™action est basรฉe sur un personnage tierce (Exemple : Space panic, Donkey Kong, Super-Mario Brothers, …). Pour ce type de jeu, le monde nโ€™est pas toujours tridimensionnel, son rรฉalisme importe peu et il est plutรดt restreint.
– les jeux de combat : ces jeux sont gรฉnรฉralement jouables ร  deux et les deux personnages doivent sโ€™affronter au cours dโ€™un combat (Exemple : Soul Calibur, Tekken, Mortal kombat, …). Le monde y est restreint et le rรฉalisme est de moindre importance.
– les jeux de course : ces jeux se dรฉroulent sur un circuit et le joueur doit concourir ร  une courses de voiture ou tout autre type de vรฉhicule (Exemple : Grand Turismo, Need For Speed,…). Pour ce type de jeux, la superficie du monde se limite aux circuits mais le rรฉalisme visuel et physique y est gรฉnรฉralement essentiel.
– les jeux de stratรฉgies ou RTS (Real Time Strategy) : dans ce type de jeu, le joueur doit conquรฉrir un monde en commandant son unitรฉ de combat (Exemple : Age Of Empires, Warcraft, Command Conquer, …). Ce genre de jeu attache peu dโ€™importance au rรฉalisme du monde mais celui-ci peut รชtre trรจs รฉtendu.
– les jeux massivement multijoueurs ou MMOG (Massively Multiplayer Online Games) : ce sont des jeux en ligne oรน des utilisateurs du monde entier sโ€™affrontent dans un monde virtuel (Exemple : World Of Warcraft, EverQuest, Star Wars Galaxies, …). Ce dernier est gรฉnรฉralement trรจs vaste et continue de sโ€™รฉtendre ร  mesure que des mises ร  jour sont proposรฉes, cependant son rรฉalisme nโ€™est pas primordial.
– les jeux de simulation de vie : ce type de jeu nโ€™a pas de but prรฉcis, il sโ€™agit de gรฉrer la vie dโ€™un personnage ou dโ€™une famille. (Exemple : Les Sims, SimCity). Le monde est restreint et son rรฉalisme est important.
– les jeux de rรดle ou RPG (Role-Playing Games) : dans ces jeux, le joueur incarne un ou plusieurs personnages et doit mener ร  bien une quรชte. Ils peuvent รชtre massivement multijoueurs auquel cas on peut les dรฉsigner par le terme MMORPG (Massively Multiplayer Online Role-Playing Games) (Exemple : Dragon Quest). Le monde dans lequel le joueur รฉvolue est souvent trรจs vaste et ce dโ€™autant plus sโ€™il est multijoueur mais on attache peu dโ€™importance ร  son rรฉalisme.
– les jeux de sport : jeux de simulation du sport (Exemple : FIFA, NBA ) qui requiรจrent un environnement rรฉaliste mais peu รฉtendu.

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres

Introduction
I ร‰tat de lโ€™art
1 Les environnements virtuels 3D
1.1 Prรฉsentation des environnements virtuels 3D
1.2 Classification des environnements virtuels 3D
1.2.1 Les jeux vidรฉos
1.2.2 Les mรฉtavers
1.2.3 Lโ€™apprentissage en ligne (e-learning) et les jeux sรฉrieux (serious games)
1.2.4 Le web gรฉospatial
1.2.5 La Conception Assistรฉe par Ordinateur .
1.3 Synthรจse et conclusion
2 Lโ€™interopรฉrabilitรฉ des environnements virtuels 3D
2.1 Lโ€™interopรฉrabilitรฉ des contenus 3D
2.1.1 Entente sur un modรจle
2.1.2 Entente sur un mรฉtamodรจle
2.1.3 Rรฉconciliation des modรจles
2.2 Lโ€™interopรฉrabilitรฉ des composants logiciels de rendu
2.2.1 Entente sur un modรจle
2.2.2 Entente sur un mรฉtamodรจle
2.2.3 Rรฉconciliation des modรจles
2.3 Lโ€™interopรฉrabilitรฉ des environnements virtuels 3D
2.3.1 Entente sur un modรจle
2.3.2 Entente sur un mรฉtamodรจle
2.3.3 Rรฉconciliation des modรจles
2.4 Synthรจse et conclusion
2.4.1 Synthรจse
2.4.2 Conclusion
3 Analyse des รฉlรฉments constitutifs dโ€™un environnement virtuel 3D
3.1 Analyse des contenus des environnements virtuels 3D
3.1.1 La description des contenus 3D
3.1.2 Les formats 3D
3.1.3 La structuration des reprรฉsentations
3.2 Analyse des composants logiciels des environnements virtuels 3D
3.2.1 Les composants de rendu des environnements virtuels 3D
3.2.1.1 Le moteur de rendu graphique
3.2.1.2 Le moteur physique
3.2.1.3 Le moteur de comportement et dโ€™intelligence artificielle
3.2.1.4 Le moteur de son
3.2.1.5 Le moteur de mise en rรฉseau
3.2.1.6 Le gestionnaire de pรฉriphรฉriques
3.2.2 Les contraintes du rendu temps rรฉel
3.2.3 Les รฉlรฉments dโ€™optimisation du processus de rendu
3.2.3.1 Lโ€™รฉlimination des parties cachรฉes
3.2.3.2 Le modรจle dโ€™รฉclairage
3.3 Synthรจse et conclusion
3.3.1 Les รฉlรฉments communs aux contenus 3D et aux composants de rendu
3.3.2 Conclusion
II Contribution
4 Du graphe de scรจne ร  lโ€™adaptateur de graphes de scรจne
4.1 Le graphe de scรจne comme dรฉnominateur commun
4.2 Lโ€™adaptateur de graphes de scรจne : proposition fondamentale
5 Lโ€™adaptateur de graphes de scรจne
5.1 Prรฉsentation de lโ€™architecture gรฉnรฉrale
5.2 Les composants du SGA
5.2.1 Le SGA
5.2.1.1 Les interfaces de programmation dโ€™adaptation
5.2.1.2 Le noyau
5.2.1.3 Le module de mise en correspondance des nล“uds
5.2.2 Les modules dโ€™adaptation
5.2.2.1 Les modules dโ€™adaptation de formats
5.2.2.2 Les modules dโ€™adaptation de moteur
5.3 Lโ€™intรฉgration du SGA dans un environnement virtuel 3D
5.3.1 La phase de dรฉmarrage et dโ€™initialisation
5.3.2 La phase dโ€™exรฉcution de lโ€™application
5.4 Le SGA : discussion et fonctionnalitรฉs
5.4.1 Interopรฉrabilitรฉ avec les contenus 3D
5.4.2 Interopรฉrabilitรฉ avec les composants de rendu
5.4.3 Interopรฉrabilitรฉ entre les contenus et les composants de rendu
5.5 Synthรจse et conclusion
6 Implรฉmentation de lโ€™adaptateur de graphes de scรจne et exemples dโ€™instanciations de modules dโ€™adaptation
6.1 Notre implรฉmentation du SGA
6.1.1 Le noyau
6.1.2 La fabrique des instances de modules dโ€™adaptation de format
6.1.3 La fabrique des instances de modules dโ€™adaptation de moteur
6.1.4 Le module de mise en correspondance des nล“uds
6.2 Lโ€™instanciation du SGA
6.2.1 Les formats
6.2.1.1 Instanciation du module dโ€™adaptation X3D
6.2.1.2 Instanciation du module dโ€™adaptation Collada
6.2.1.3 Remarques sur les instances de module dโ€™adaptation de format
6.2.2 Les moteurs
6.2.2.1 Instanciation du module dโ€™adaptation Ogre
6.2.2.2 Instanciation du module dโ€™adaptation Bullet
6.2.3 Lโ€™application de test
6.3 ร‰valuation du SGA au travers de notre instanciation
6.3.1 Interopรฉrabilitรฉ de X3D et Collada avec lโ€™application
6.3.2 Interopรฉrabilitรฉ des moteurs Ogre et Bullet avec lโ€™application
6.3.3 Interopรฉrabilitรฉ entre les formats et les moteurs
6.3.4 Exemples dโ€™utilisation
6.4 Tests et Discussion
6.4.1 Discussion
6.4.2 Tests
6.4.2.1 Protocole de test
6.4.2.2 Rรฉsultats et interprรฉtation
6.4.2.3 Synthรจse
6.5 Synthรจse et conclusion
7 Vers la composition de scรจnes 3D : un modรจle de conteneur pour les formats 3D
7.1 Un conteneur de fichiers 3D
7.1.1 Vers lโ€™interopรฉrabilitรฉ entre les formats 3D
7.1.2 Les formats conteneurs
7.1.3 Les critรจres de conception
7.2 La conception du format 3DFC
7.2.1 Le modรจle du format 3DFC
7.2.1.1 Les nล“uds de description
7.2.1.2 Les nล“uds dโ€™interaction
7.2.2 Utilisation du 3DFC
7.2.2.1 Intรฉgration du 3DFC avec le SGA
7.2.2.2 Le chargement dโ€™un fichier 3DFC par le SGA
7.2.2.3 Le fonctionnement du modรจle de 3DFC pendant lโ€™exรฉcution
7.3 Instanciation du modรจle 3DFC et intรฉgration ร  notre implรฉmentation du SGA
7.3.1 Description de scรจne composรฉe
7.3.2 Mixer les fonctionnalitรฉs des formats 3D
7.3.2.1 Utilisation du nล“ud Route
7.3.2.2 Utilisation du nล“ud Match
7.4 Synthรจse et conclusion
7.4.1 Synthรจse
7.4.2 Conclusion
Conclusion

Rapport PFE, mรฉmoire et thรจse PDFTรฉlรฉcharger le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiรฉe. Les champs obligatoires sont indiquรฉs avec *