Cohérence et synchronisation dans un environnement virtuel multi-sensoriel réparti

Authors: Drolet, Frédéric
Advisor: Laurendeau, Denis
Abstract: La réalité virtuelle est une technologie qui permet à un utilisateur d'interagir avec une scène générée par ordinateur. L'environnement virtuel dans lequel évolue le participant doit lui fournir des informations sensorielles pour qu'il puisse effectuer des tâches de façon naturelle. Plusieurs outils logiciels et matériels sont actuellement disponibles sur le marché pour tenir compte des différents aspects d'un environnement virtuel: visualisation immersive, simulation des lois de la physique, émissions sonores, etc. Cependant, aucune application n'a été développée pour intégrer ces différentes technologies dans un seul et même système. Ce projet présente une approche modulaire et flexible qui utilise les principes du multi-îhreading afin de synchroniser les données communes de position, d'orientation et de facteurs d'échelle entre plusieurs sous-systèmes intégrés dans un environnement virtuel multi-sensoriel et distribué. L'application finale comporte cinq soussystèmes qui gèrent tous un aspect de l'environnement virtuel : la synchronisation, la visualisation, la gestion des lois physiques, la distribution sur un réseau et l'intégration des sous-systèmes. Tout d'abord, un module de synchronisation forme le coeur du système en protégeant l'accès asynchrone aux données partagées entre les modules. Un processus de synchronisation en trois étapes permet alors de maintenir la cohérence entre les différents modules. Ensuite, un module de visualisation permet de produire un rendu graphique en trois dimensions de l'environnement virtuel en affichant les géométries et les textures des différents éléments virtuels composant la scène. De plus, un module haptique est utilisé pour appliquer les lois physiques sur les objets. Puis, afin de distribuer les modules sur plusieurs machines d'un réseau ou rendre l'application multi-utilisateurs, un module de distribution sera également ajouté au système final. Enfin, un module d'intégration permet d'interconnecter les modules entre eux en encapsulant les fonctionnalités du module de synchronisation. Ce dernier module permettra de gérer la transmission d'information entre les modules et d'ajouter des comportements de haut niveau au système final comme la navigation, la manipulation d'objets, des interfaces graphiques, etc.
Document Type: Mémoire de maîtrise
Issue Date: 2008
Open Access Date: 13 April 2018
Permalink: http://hdl.handle.net/20.500.11794/20262
Grantor: Université Laval
Collection:Thèses et mémoires

Files in this item:
SizeFormat 
25659.pdf23.44 MBAdobe PDFView/Open
All documents in CorpusUL are protected by Copyright Act of Canada.