Objet
De nos jours, de plus en plus de laboratoires et d'industriels développent
ou utilisent des systèmes de Réalité Virtuelle (RV). La
plupart du temps, les interactions sur ces systèmes se résument
à transcrire dans les environnements virtuels 3d les interactions Fenêtres,
Icônes, Menus et Pointeur (WIMP - Windows, Icons, Menus and Pointing)
dévolues aux stations de bureaux. De plus, à l'instar des grands
industriels de l'automobile, les applications de Réalité Virtuelle
sont souvent cantonnées à la visualisation de données dans
des formats très appauvris (surfaces polyédriques) malgré
la topologie parfois complexe de certains objets (cf. CAO). Dans ce contexte,
la plate-forme EVI3d (Environnement Virtuels et Interaction 3d) a été
développée pour étudier l'intégration de plusieurs
concepts et paradigmes susceptibles de rendre plus "naturelles" les interactions
immersives. Outre une approche multimodale de l'interaction, nous avons dû
repenser le concept de "véhicule" et plus fondamentalement de proposer
une architecture distribuée originale.
Description
Dans le cadre d'applications 3d immersives ou non, plusieurs auteurs ont déjà
montré que le modèle WIMP a pour défaut majeur d'imposer
à l'utilisateur de changer fréquemment de contexte de travail.
L'une des lignes conductrices de nos travaux a donc été de permettre
l'utilisation de tout ce que le domaine de l'interaction humain-machine peut
apporter aux environnements immersifs. Cependant, seul un sous-ensemble de ces
interactions (parole, capture des mouvements, geste) n'a été mie
en oeuvre, puisqu'en effet, parmi l'ensemble des solutions existantes, certaines
sont redondantes du point de vue de la validation de ces travaux, tandis que
d'autres ne sont pas suffisamment "naturelles". Ainsi une composante importante
de l'architecture logicielle EVI3d est centrée sur la problématique
de la gestion d'événements qui formalisent et encapsulent les
interactions. Ces événements transitent d'un périphérique
ou d'un module interactif vers un autre au travers d'un serveur distribué
(cf. EVserveur). Il est bien entendu que l'application qui gère le rendu
3d est considérée, dans notre cas, comme un module interactif.
Cependant, afin de soulager ce type de calculateur de certaines charges de calcul
liées à l'interaction, plusieurs périphériques et
modules sont exportés grâce à l'architecture EVI3d sur d'autres
machines. Il s'agit en particulier des modules et des périphériques
qui gèrent des processus de reconnaissance de la parole ou du geste.
Cette distribution peut aussi être imposée par des besoins spécifiques
en termes de connexions matérielles ou de systèmes d'exploitation.
Un des points clefs de l'interaction "naturelle" est la possibilité de
fusionner des événements issus de modalités diverses (cf.
fusion multimodale). Afin de valider l'architecture logicielle pour la gestion
de telles interactions, nous avons mis en oeuvre des interactions immersives
basées sur la combinaison de commandes vocales avec les gestes co-verbaux
associés. Ces interactions ont généralement une latence
propre dûe à la technologie utilisée. Ainsi, l'architecture
EVI3d est dotée d'un système de synchronisation temporelle indispensable
à ce type de fusion puisque le traitement des interactions est réparti
sur plusieurs calculateurs. Ce système permet entre autre de recréer
la trame temporelle de l'ensemble des actions de l'utilisateur, trame indispensable
à une fusion multimodale avec cohérence temporelle (voir la figure
1).
Cependant, les environnements logiciels actuels ne permettent pas la modularité
requise par l'architecture logicielle proposée et par les interactions
"naturelles" étudiées. De plus, les applications gérées
par ces systèmes manipulent généralement des objets statiques
où qui ont des comportements dynamiques prédéfinis. Dans
les faits ces systèmes accaparent les ressources de calcul au détriment
des traitements utiles à l'application. Or, ces traitements peuvent requérir
une grande puissance de calcul, dans le cadre de simulations scientifiques par
exemple. De plus ils n'autorisent pas la synchronisation des rendus en présence
de traitements en parallèle. Dans ce contexte, nous avons dû concevoir
un ensemble logiciel qui autorise cette distribution des applications de Réalité
Virtuelle, tout en offrant les fonctionnalités standards de gestion des
dispositifs immersifs existants. Ces dernières ont été
mises en place dans le noyau géométrique de EVI3d, qui constitue
le "coeur" de la partie immersive de cette architecture.
Un autre point clef que prennent aussi en charge ces outils de gestion des environnements
immersifs est la métaphore du "véhicule". Ce concept permet de
dissocier complètement le monde virtuel du monde réel, tout en
constituant le point de passage obligé entre ces deux mondes. Issu des
travaux du LIMSI-CNRS en matière de contrôle des navigations virtuelles,
ce concept est devenu la base même de notre noyau géométrique.
Cette approche autorise l'utilisation d'une même application dans tous types
de dispositif immersif. En combinant ce noyau avec la dynamicité de l'architecture
EVI3d en termes de gestion de périphériques, l'application qui
utilise cet ensemble logiciel devient polymorphique. En d'autres termes, elle
peut aussi bien être utilisée sur une console avec un écran
standard, un clavier et une souris que sur un environnement immersif avec tout
type de périphérique. La seule modification à apporter
pour changer de mode de fonctionnement sera une modification du fichier de configuration
correspondant.
En ce qui concerne les interactions "naturelles", nous proposons en particulier
de libérer la main de tout autre périphériques que ceux
associés à la manipulation des objets (sélection, préhension,
déformation...) en analysant les mouvements de la tête de l'utilisateur.
Pour mettre en oeuvre ce paradigme de contrôle "main libre" des navigations
virtuelles, nous avons mis au point une solution qui permet à l'utilisateur
de se déplacer dans la totalité du monde virtuel à l'aide
d'un simple capteur à 6 degrés de liberté. Ce système
est basé sur le traitement de l'écart du référentiel
courant du capteur par rapport à celui d'un référentiel
neutre issu d'une calibration. Ainsi, à l'instar de la manette de jeu
dont la position neutre est celle au repos, plus l'utilisateur s'écartera
du référentiel calibré, plus le véhicule ira rapidement
dans la direction visée. Le principe de ce système est suffisamment
générique pour être utilisé par d'autres parties
du corps. Les adaptations nécessaires pour faire de ce concept en un
outil de navigation efficace sont également discutées.

Résultats et perspectives
En termes d'évaluation, deux tests ont montré la précision
du système. Ceux-ci concernent la latence de transmission des événements
ainsi que la latence de synchronisation des événements. Cependant,
nous travaillons actuellement à étudier plus globalement la latence
totale du système.
En guise de validation de l'architecture, cinq des six applications ou démonstrateurs
de Réalité Virtuelle développés au LIMSI-CNRS utilisent
la plate-forme EVI3d. Il existe en particulier deux applications scientifiques
: l'une a été conçue depuis l'origine dans cet environnement logiciel
; l'autre n'a migré que dernièrement sur la plate-forme EVI3d.
Ces travaux prouvent enfin la faisabilité d'une approche multimodale
des interactions en RV. Un démonstrateur présente notamment des
interactions immersives qui utilisent la synchronisation temporelle entre les
machines du serveur distribué EVserveur pour fusionner des événements
interactifs issus de systèmes de reconnaissance à forte latence
(geste, voix).
Enfin, nous sommes actuellement en train de concevoir un protocole d'évaluation
ergonomique du système de navigation décrit ci-dessus. Afin de
ne pas dépayser l'utilisateur, ce protocole sera validé sur une
scène architecturale et urbaine et non sur des applications scientifiques.
Référence
[1] D. Touraine Interaction "naturelle" en environnements
immersifs - Démonstrateur multimodal et validation sur des applications
scientifiques. Mémoire de doctorat, Université Paris Sud-XI,
Mars 2003.
[2] D. Touraine, P. Bourdot, Y. Bellik, and L. Bolot. A framework to manage
multimodal fusion of events for advanced interactions within Virtual Environments
In Proc. of Eurographics Workshop for Virtual Environments, Barcelona (Spain),
May 2002.
[3] P. Bourdot and D. Touraine. Polyvalent display framework to control virtual
navigations by 6DOF tracking. In Proc. of IEEE International Virtual Reality
Conference 2002, Orlando (Florida), March 2002.