PRÉFACE François d Aubert En parcourant le traité de la réalité virtuelle, le lecteur découvrira une large réflexion collective sur ce nouveau secteur d activités, issu de recherches à la croisée des sciences de l ingénieur et des sciences cognitives. Au-delà de l aspect technique, clairement développé tout au long de ce traité, il se dégage un nouveau mode de travail et d expérimentation : l homme, s extrayant de son environnement quotidien, peut observer, agir, dialoguer, se former... en un mot, vivre dans un nouvel univers artificiel. Ce nouveau paradigme ouvre des horizons prometteurs dans des domaines aussi variés que celui de la formation, de la santé, de l urbanisme, de la simulation scientifique et de l industrie. Cette dernière, s interrogeant en premier sur cette source d innovations technologiques, a franchi une étape décisive, passant d une réflexion sur les potentiels de la réalité virtuelle à des outils d exploitation, maintenant opérationnels. A l heure de la mondialisation de l économie, il est réconfortant de voir la vitalité de la recherche française et de ses retombées auprès des entreprises. Le volume du traité sur les applications est là pour témoigner des potentialités effectives de la réalité virtuelle. Le lecteur y découvrira les applications des grands secteurs de l économie française, mais aussi dans des domaines où nous l attendions moins : l archéologie, les géosciences, la psychothérapie pour ne citer que ceux-ci. Derrière le côté attrayant de la réalité virtuelle, se cachent en fait des travaux très complexes de modélisation informatique. Un volume sur ce thème aborde ce sujet, écrit par les meilleurs spécialistes français. D autres problématiques sont traitées également dans deux autres volumes, couvrant le grand champ scientifique que sollicite la réalité virtuelle : la modélisation du comportement de l homme dans ces nouveaux environnements virtuels et la création d interfaces adaptées à son immersion. Ce traité est un fameux défi, pris sur l initiative du Professeur Philippe Fuchs, qui a su, grâce à une connaissance du domaine et de la communauté des chercheurs, convaincre ces derniers de réaliser collectivement cette œuvre originale et unique dans le domaine des livres scientifiques. Je suis convaincu que ce traité éclairera le chercheur, l entrepreneur et tout lecteur par l étendue des sujets rédigés avec un souci d excellence scientifique et pédagogique. Souhaitons que nos jeunes diplômés trouveront plaisir à s informer sur ce domaine innovant et que celui-ci suscitera des vocations pour cet immense défi. En tant que Président de l agglomération lavalloise et ancien Ministre de la Recherche, j ai été très heureux d aider au développement de la réalité virtuelle en France. La recherche et les entreprises françaises ont réussi à se hisser au premier plan européen. Ce traité en sera un témoignage instructif pour tous nos concitoyens ainsi qu au niveau international. Laval continuera, par l intermédiaire de son congrès international «Laval Virtual», de promouvoir cet ensemble de sciences et de techniques, en permettant aux chercheurs et aux professionnels de prendre encore plus conscience des enjeux de la réalité virtuelle.
ii Le traité de la réalité virtuelle Nous pouvons être fiers d avoir en France une communauté aussi performante que dynamique sur ce domaine, situé à l interface de plusieurs secteurs de la Recherche : c est un aboutissement de l évolution de sciences et de techniques informatiques, mais c est aussi un nouveau départ vers des espaces, certes virtuels, mais fertiles pour notre société si nous savons en tirer des profits durables et réfléchis. Monsieur François d Aubert Président de l agglomération lavalloise Maire de Laval Ancien Ministre de la Recherche
AVANT-PROPOS Philippe Fuchs et Guillaume Moreau Depuis une quinzaine d années, la réalité virtuelle s est développée en France. Celle-ci ouvre potentiellement de nouvelles perspectives pour notre société. Mais soyons réalistes, la réalité virtuelle induit d abord bien des défis scientifiques pour les chercheurs et pour les professionnels. Nous avons participé avec enthousiasme à l éclosion de la réalité virtuelle en France, conscients de l immensité de la tâche. Pour notre part, nous avons développé à l Ecole des Mines de Paris des recherches théoriques et appliquées sur l interfaçage du sujet dans un environnement virtuel. Durant nos travaux de recherche, nous avons souhaité faire une tâche d information sur les avancées du domaine. En 1996, Philippe Fuchs a rédigé un premier livre : «les interfaces de la réalité virtuelle». En 2001, Guillaume Moreau, Jean-Paul Papin et Philippe Fuchs, conscients de l absence de livre récent en français, ont écrit une première édition du «Traité de la Réalité Virtuelle». Mais aucun chercheur ne peut avoir une connaissance précise de tous les secteurs de la réalité virtuelle, interdisciplinaire par essence. Nous avons souhaité que d autres chercheurs français participent à la rédaction du traité pour une deuxième édition. Ce fut obtenu d autant plus facilement que l ensemble de ces chercheurs collaborait déjà dans des projets communs, dont la plateforme PERF-RV. De nouveaux chapitres ont été rédigés par des chercheurs de l ENIB, de l IRISA, de l INRIA, de l AFPA, de l Ecole des Mines de Paris et du CNRS. Parallèlement à la parution en 2003 de la deuxième édition, nous avons continué à œuvrer pour rassembler les communautés concernées, des sciences de l ingénieur aux sciences cognitives. Nous avons participé à des actions interdisciplinaires : l Action Spécifique du CNRS Réalité Virtuelle et Cognition, animée par Patrick Bourdot et Philippe Fuchs, les journées RéViCo (Réalité Virtuelle et Cognition) qui se déroulèrent à l ENST, sous la direction de A. Grumbach et N. Richard en décembre 1999, et l école thématique Réalité Virtuelle et Sciences du Comportement du CNRS, organisée par Jean-Louis Vercher et Daniel Mestre. Dans ce cadre très ouvert d échanges et de collaborations, nous avons souhaité poursuivre notre œuvre collective de rédaction par une troisième édition relativement complète et plus interdisciplinaire. Pour réaliser cette troisième édition plus étendue, nous avons mis en place un comité de rédaction, composé d experts en réalité virtuelle provenant de différentes disciplines : Bruno Arnaldi, Professeur et chercheur à l INRIA ; Alain Berthoz, Professeur au Collège de France et membre de l Académie des Sciences ; Jean-Marie Burkhardt, Maître de Conférences à l université Paris V ; Sabine Coquillart, Directrice de recherches à l INRIA, Philippe Fuchs, Professeur à l Ecole des Mines de Paris. Pascal Guitton, Professeur et chercheur à l INRIA ; Guillaume Moreau, Maître de Conférences à l Ecole Centrale de Nantes ; Jacques Tisseau, Professeur à l ENIB ; Jean-Louis Vercher, Professeur à l Université d Aix-Marseille ;
iv Le traité de la réalité virtuelle La tâche de ce comité de rédaction, animé par Philippe Fuchs, fut d organiser les contenus, de proposer des auteurs et de s assurer de la cohérence de l ouvrage. Les membres du comité ont veillé à l homogénéité du discours afin que le livre soit accessible à tout public de disciplines différentes, tout en étant interdisciplinaire dans son contenu. La réalisation de cet ouvrage, essentiellement collectif, fut sous la direction de Philippe Fuchs et la coordination générale de Guillaume Moreau. Chaque volume a été coordonné par deux membres du comité. Le comité a défini les objectifs du traité, manuel destiné à la fois aux concepteurs et aux utilisateurs de la réalité virtuelle. Il a pour but de leur fournir un état, aussi complet que possible, des connaissances sur la réalité virtuelle dans les domaines suivants : informatique, mécanique, optique, acoustique, physiologie, psychologie, ergonomie, éthique,... Il doit être l ouvrage de référence du domaine et un guide de conception pour aider le lecteur dans la réalisation de son projet de réalité virtuelle. En second lieu, il s agit de formaliser une réflexion originale et d aider à une conceptualisation de cette discipline. La structuration du traité en quatre volumes ainsi que les contenus de ces volumes sont présentés dans le premier chapitre d introduction de chaque volume. Après avoir précisé le domaine de la réalité virtuelle et les problématiques qui en découlent, nous explicitons notre choix d organisation en quatre volumes. Pour permettre à chaque lecteur de débuter la consultation du traité par le volume de son choix, le début de tous les chapitres 1 des quatre volumes est identique sur une douzaine de pages. Le concept de base de cet interlivre, rédigé par des interauteurs et interdisciplinaire dans son contenu, a pour objectif de fournir à toute personne un document de référence sur la réalité virtuelle. Notre ambition est de proposer des éditions du traité réactualisées, sachant qu une réédition périodique est possible grâce à la réactivité de l éditeur, les Presses de l École des Mines de Paris. Nous tenons à remercier en premier les coordonnateurs, membres du comité de rédaction. Sans eux, cette troisième édition n aurait pas pu voir le jour et, grâce à leur notoriété, ils nous ont permis de rassembler la communauté française du domaine pour concrétiser cette œuvre collective. Nos remerciements s adressent évidemment aux 75 auteurs, chercheurs ou professionnels, ainsi qu aux 12 contributeurs qui ont écrit les 63 chapitres du traité. Malgré leurs charges professionnelles, ils ont pris le temps nécessaire pour rédiger, généralement collectivement, des chapitres concis et pertinents sur leur secteur de recherches ou d activités. Sans leur accord et leur enthousiasme, nous sommes conscients que l objectif de réaliser un véritable traité de la réalité virtuelle n aurait jamais pu être atteint. Ce traité est agrémenté par des photographies et des informations fournies par des entreprises que nous remercions de leur collaboration. Nous remercions l éditeur, les Presses de l Ecole des Mines de Paris et sa responsable, Madame Silvia Dekorsy, qui nous a aidé à la réalisation de cette troisième édition et qui, avec beaucoup de patience, a pris le temps nécessaire à lire, corriger et améliorer plus de 1700 pages de ce volumineux ouvrage. Notre gratitude va également à Messieurs Benoît Tandonnet et Ahad Yarirad pour leur superbe travail sur les couvertures. Nos remerciements s adressent au Président de l agglomération lavalloise, Maire de Laval, Monsieur François d Aubert, ancien Ministre de la Recherche, qui nous a soutenus dans notre projet et qui nous a fait l honneur de préfacer notre livre.
Le traité de la réalité virtuelle est issu d un projet rédactionnel ambitieux et fédérateur. Nous espérons, cher lecteur, que vous apprécierez ce traité, comme nous avons pris plaisir à le rédiger avec les autres auteurs et à transmettre nos idées. v
vi Le traité de la réalité virtuelle
LES AUTEURS DIRECTION DU TRAITÉ Philippe Fuchs est à l initiative du «Traité de la réalité virtuelle» et dirige la rédaction de l ouvrage, dont c est la troisième édition. Professeur à l Ecole des Mines de Paris, il est le responsable de l équipe Réalité Virtuelle et Réalité Augmentée au Centre de Robotique. Ses recherches concernent les aspects théoriques et techniques de l interfaçage en Réalité Virtuelle. Il est auteur ou coauteur des chapitres 1, 3, 14 du volume 1 ; des chapitres 1 à 5 et 9 à 12 du volume 2 ; du chapitre 1 du volume 3 ; des chapitres 1, 2 du volume 4. (philippe.fuchs@ensmp.fr - www.caor.ensmp.fr/ fuchs) COORDONNATEURS Guillaume Moreau est le coordonnateur du «Traité de la réalité virtuelle». Maître de conférences en informatique à l Ecole Centrale de Nantes, ses activités de recherche se déroulent au CERMA et portent sur l utilisation des outils de réalité virtuelle pour l étude des ambiances architecturales et urbaines ainsi que sur la reconstruction 3D d environnements virtuels urbains. Il est auteur du chapitre 2 du volume 3 et du chapitre 9 du volume 4 ; coauteur du chapitre 1 du volume 3. (guillaume.moreau@ec-nantes.fr - www.cerma.archi.fr) Jacques Tisseau est Professeur des Universités en Informatique à l Ecole Nationale d Ingénieurs de Brest (ENIB) où il dirige le Centre Européen de Réalité Virtuelle (CERV). Ses recherches portent sur l autonomisation des entités virtuelles, l interaction avec ces entités autonomes et l épistémologie de la réalité virtuelle. Il est coauteur des chapitres 1, 9 et 11 du volume 3. (tisseau@enib.fr - www.cerv.fr) AUTEURS Bruno Arnaldi est professeur à l INSA de Rennes (Institut National des Sciences Appliquées) et effectue ses recherches à l IRISA (Institut de Recherche en Informatique et Systèmes Aléatoires UMR 6074) où il dirige, depuis 1992, le projet SIAMES (projet commun INRIA/CNRS). Ses activités de recherche concernent l informatique graphique et plus précisément l animation/simulation de systèmes physiques. Il a obtenu un doctorat en informatique de l Université de Rennes 1 en 1988 et une habilitation à diriger les recherches de l université de Rennes 1 en 1994. Bruno Arnaldi a été responsable de la plate-forme RNTL PERF-RV (2001-2004) et est membre du Network Management Committee du Réseau d Excellence INTUITION. Il est coauteur du chapitre 12 du volume 3 et du chapitre 1 du volume 4. (Bruno.Arnaldi@irisa.fr - www.irisa.fr)
viii Le traité de la réalité virtuelle Ronan Boulic est adjoint scientifique au Laboratoire de Réalité Virtuelle de l EPFL à Lausanne. Ses travaux portent sur la modélisation, le contrôle, la capture et la transformation du mouvement humain ainsi que sur les applications les mettant en œuvre pour l interaction en 3D. Il est coauteur du chapitre 10 du volume 3. (Ronan.Boulic@epfl.ch - vrlab.epfl.ch/ boulic/professional.html) Patrick Bourdot est chercheur au LIMSI-CNRS (Orsay), responsable de l équipe VE- NISE, ses travaux en Réalité Virtuelle et Augmentée portent sur l Interaction Multimodale, la Gestion de Scènes et les Architectures distribuées, et leurs applications à la CAO, à l analyse de données scientifiques et au pilotage distant de véhicules. Il est coauteur du chapitre 16 du volume 2, du chapitre 10 du volume 3, des chapitres 4 et 8 du volume 4. (bourdot@limsi.fr - www.limsi.fr/venise) Marie-Paule Cani est professeur à l INP Grenoble et responsable scientifique de l équipe EVASION (projet INRIA) du Laboratoire GRAVIR/IMAG. Ses activités de recherche portent sur la simulation graphique de scènes naturelles animées, issues des mondes végétal, minéral et animal. Elle est coauteur du chapitre 11 du volume 3. (Marie-Paule.Cani@imag.fr - www-evasion.imag.fr/membres/marie-paule.cani) Eric Cazeaux est ingénieur de recherche au laboratoire CERV à l ENIB de Brest. Il se charge du développement de l application GVT (Giat Virtual Training), outil de formation aux opérations de maintenances utilisant la réalité virtuelle et apporte sa contribution à la plate-forme ARéVi. Il est coauteur du chapitre 13 du volume 3. (cazeaux@enib.fr - www.cerv.fr/ cazeaux) Alain Chauffaut est ingénieur de recherche dans l équipe Siames à l Inria de Rennes. Il est chargé de la mise à disposition de OpenMASK une plate-forme distribuée pour la réalité virtuelle. Il est coauteur du chapitre 12 du volume 3. (Alain.Chauffaut@irisa.fr - www.irisa.fr/siames) Stéphane Donikian est chargé de recherche au CNRS au sein de l Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA UMR 6074) situé à Rennes, et plus exactement de l équipe SIAMES (Synthèse d Images, Animation, Modélisation Et Simulation). Ses axes de recherche concernent entre autre la modélisation du comportement humain, l animation comportementale réactive et cognitive, la simulation de foules, les environnements virtuels informés et la scénarisation d environnements virtuels narratifs et interactifs. Il est auteur des chapitres 8 du volume 3 et 12 du volume 4 et coauteur des chapitres 10 et 12 du volume 3. (donikian@irisa.fr - www.irisa.fr/prive/donikian) Thierry Duval est Maître de Conférences en Informatique à l Université de Rennes 1 et fait partie de l équipe SIAMES de l IRISA. Il effectue ses recherches dans le domaine des interactions collaboratives en environnements virtuels partagés (entre utilisateurs physiquement proches ou distants), et ses travaux contribuent au développement
ix d OpenMASK (www.openmask.org). Il est coauteur du chapitre 12 du volume 3. (Thierry.Duval@irisa.fr - www.irisa.fr/siames/thierry.duval) François Faure est enseignant-chercheur à l université Joseph Fourier, Grenoble. Son domaine de recherche principal est l animation par modèles physiques pour les solides rigides et déformables. Il est coauteur du chapitre 7 du volume 3. (Francois.Faure@imag.fr - www.imag.fr) Pascal Guitton est Professeur d informatique à l université Bordeaux 1 où il anime un projet de recherche commun au LaBRI et à l INRIA baptisé IPARLA. Ses activités dans le domaine de la réalité virtuelle concernent principalement la création d environnements virtuels, leur visualisation en temps réel et l interaction 3D avec des données complexes. Il est coauteur du chapitre 3 du volume 3 et du chapitre 1 du volume 4. (Pascal.Guitton@labri.fr - www.labri.fr) Fabrice Harrouet est Maître de Conférences au laboratoire CERV à l ENIB de Brest. Il se charge du développement de la bibliothèque ARéVi au sein du CERV et enseigne principalement la programmation système, les réseaux et les techniques de compilation à l ENIB. Il est coauteur des chapitres 9 et 13 du volume 3. (harrouet@enib.fr - www.enib.fr/ harrouet) Jean-Pierre Jessel est professeur à l Université Paul Sabatier et responsable de l équipe Synthèse d Images et Réalité Virtuelle et de la plate-forme de RV PREVI de l IRIT. Ses recherches actuelles concernent la Réalité Virtuelle et ses applications au prototypage virtuel et à l ingénierie collaborative, les simulations distribuées collaboratives, l interaction 3D et l animation de personnages. Il est coauteur du chapitre 16 du volume 3 et du chapitre 7 du volume 4. (jessel@irit.fr - www.irit.fr) Thomas Jourdan est ingénieur d étude au laboratoire CERV à l ENIB de Brest. Il se charge du développement de la bibliothèque d humanoïdes hlib, de l implémentation du modèle IPAS et apporte sa contribution à la plate-forme ARéVi. Il est coauteur du chapitre 13 du volume 3. (jourdan@enib.fr - www.cerv.fr/ jourdan) Abderrahmane Kheddar est professeur à l université d Evy, il est en détachement au CNRS et codirige le AIST/CNRS laboratoire commun franco-japonais de robotique. Ses recherches concernent les techniques de réalité virtuelle, l interaction et interfaces haptiques et la robotique humanoïde. Il est co-auteur des chapitres 5 et 6 du volume 3. (kheddar@ieee.org) Philippe Meseure est Maître de Conférences au laboratoire SIC de l université de Poitiers. Ses centres d intérêt couvrent la simulation physique, la détection de collision, le retour d effort, l animation des structures topologiques et les simulateurs chirurgicaux.
x Le traité de la réalité virtuelle Il est co-auteur des chapitres 5 et 6 du volume 3. (meseure@sic.sp2mi.univ-poitiers.fr - www.sic.sp2mi.univ-poitiers.fr/meseure) Franck Multon est Maître de conférences au LPBEM, Université Rennes2, et collaborateur du projet SIAMES-IRISA UMR 6074. Ses axes de recherche sont l analyse, la modélisation et la simulation du mouvement humain. Il est coauteur du chapitre 10 du volume 3 et contributeur du chapitre 17 du volume 1. (Franck.Multon@uhb.fr - www.uhb.fr/labos/lpbem/francais/personnels/multon.html) David Nahon est responsable des produits de réalité virtuelle chez Virtools depuis 2003. Auparavant, Il avait en charge la direction technique de nombreuses installations muséographiques interactives au sein de Z-A (www z-a.net) où il conçut entre autres la plate-forme informatique du SAScube, premier visiocube fonctionnant sur cluster de PC. Il est l auteur du chapitre 15 du volume 3. (nahon@virtools.com - www.virtools.com) Fabrice Neyret est chercheur au CNRS, dans l équipe EVASION du laboratoire GRA- VIR / IMAG-INRIA. Ses thèmes de recherche portent sur la simulation (forme, mouvement, rendu) de phénomènes naturels, les approches phénoménologiques, texturelles, procédurales, les représentations alternatives, l exploitation du hardware graphique (GPU). Il est coauteur du chapitre 11 du volume 3. (Fabrice.Neyret@imag.fr - www-evasion.imag.fr/membres/fabrice.neyret) Marc Parenthoën est enseignant-chercheur au CERV à Brest, dans l équipe ARéVi du Laboratoire d Informatique des Systèmes Complexes (LISyC, EA3883 UBO-ENIB). Ses recherches consistent à proposer une méthodologie (dite modélisation énactive) pour construire le virtuoscope : expérimenter in virtuo des modèles de phénomènes en interaction. Il est coauteur des chapitres 9 et 11 du volume 3. (marc.parenthoen@enib.fr - www.cerv.fr/ parenthoen) Mathias Paulin est maître de conférences en informatique, HDR de l Université Paul Sabatier de Toulouse et effectue ses recherches à l IRIT, Institut de Recherche en Informatique de Toulouse. Il a soutenu en 1995 une thèse de doctorat intitulé «Algorithmes pour la radiosité : parallélisme et échantillonnage» et en 2004 son Habilitation à Diriger les Recherches intitulée «Rendu en synthèse d images : du réalisme au temps réel». Ses recherches actuelles sont orientées vers la simulation réaliste de l éclairage en synthèse d images et le rendu temps réel afin de proposer des environnements logiciels et matériels pour l immersion visuelle réaliste en réalité virtuelle. Il est coauteur du chapitre 3 du volume 3. (Mathias.Paulin@irit.fr - www.irit.fr) Professeur d informatique à l université Lyon 1, Bernard Péroche est directeur du LIRIS, UMR 5205 du CNRS. Bernard Péroche travaille en informatique graphique et, plus spécialement, dans le domaine du rendu réaliste. Il est coauteur du chapitre 3 du volume 3.
xi (bperoche@liris.cnrs.fr) Bogdan Stanciulescu est attaché de recherche au Centre de Robotique de l Ecole des Mines de Paris. Ses axes de recherche sont la vision par ordinateur et la réalité augmentée. Actuellement il travaille sur des projets de traitement d images et de reconnaissance de formes pour l industrie automobile et sur des projets de réalité augmentée pour l aviation civile. Il est coauteur du chapitre 7 du volume 3. (bogdan.stanciulescu@ensmp.fr - caor.ensmp.fr/ bogdan) Patrice Torguet est enseignant-chercheur à l Université Paul Sabatier (Toulouse III). Il effectue sa recherche au sein de l équipe synthèse d images et réalité virtuelle de l Institut de Recherche en Informatique de Toulouse (IRIT, Unité Mixte de Recherche 5505 du CNRS). Son thème de recherche principal est la réalité virtuelle distribuée. Il est coauteur du chapitre 16 du volume 3. (torguet@irit.fr - www.irit.fr/ Patrice.Torguet) Damien Touraine a préparé et soutenu sa thèse au sein de l équipe VENISE du LIMSI- CNRS (Orsay). Son expertise porte sur l interaction en RV&A, où ses travaux traitent, d une part, des architectures matériels et logicielles pour l interaction en environnement immersif, d autre part, de l interaction «naturelle», notamment multimodale, en environnement immersif. Il fait actuellement profiter les chercheurs de l Université Louis Pasteur (Strasbourg I) de ses compétences en spécification, gestion et utilisation d environnements immersifs au sein du Centre d Études du Calcul Parallèle et de la Visualisation. Il est coauteur du chapitre 13 du volume 2 et du chapitre 14 du volume 3. Nicolas Tsingos est chargé de recherche au sein du projet REVES (Rendu et Environnements Virtuels Sonorisés) de l INRIA Sophia Antipolis. Ses axes de recherche actuels incluent la synthèse et simulation sonore réaliste pour les environnements virtuels, la simulation sonore scalable basée sur la perception auditive, les techniques Algorithmiques interactives pour l acoustique des salles et la synthèse sonore expressive à partir de modèles physiques. Il est coauteur du chapitre 3 du volume 1, du chapitre 15 du volume 2 et du chapitre 4 du volume 3. (Nicolas.Tsingos@inria.fr - www.inria.fr/reves/nicolas.tsingos) Jean-Marc Vézien est ingénieur de recherche au LIMSI-CNRS (Orsay), au sein de l équipe VENISE. Son expertise porte sur la vision par ordinateur, l interaction multimodale, la gestion de scènes complexes et massives et leur application aux problématiques de réalité virtuelle et augmentée. Il est coauteur du chapitre 13 du volume 2, du chapitre 14 du volume 3 et du chapitre 4 du volume 4. (vezien@limsi.fr - www.limsi.fr/individu/vezien) Olivier Warusfel est chargé de recherche à l IRCAM (Institut de Recherche et de Coordination Acoustique/Musique). Ses axes de recherche concernent l étude des modèles et technologies pour la reproduction sonore spatiale (synthèse binaurale, wave field synthesis, synthèse du rayonnement...), la perception et la cognition spatiale auditive et les outils d écriture de la spatialisation pour les applications musicales. Il est
xii Le traité de la réalité virtuelle coauteur du chapitre 3 du volume 1, du chapitre 15 du volume 2 et du chapitre 4 du volume 3. (Olivier.Warusfel@ircam.fr - www.ircam.fr) CONTRIBUTEUR Thomas Convard est ATER, membre de l équipe VENISE du LIMSI-CNRS (Orsay), ses travaux portent sur le couplage de la Réalité Virtuelle avec la Conception Assistée par Ordinateur (interfaces multimodales, structures de données dédiées à la RV-CAO, solutions de cluster de rendu). Il est contributeur du chapitre 14 du volume 3 et du chapitre 7 du volume 4. (convard@limsi.fr - www.limsi.fr/individu/convard)
VOLUME 1 : L HOMME ET L ENVIRONNEMENT VIRTUEL I - Introduction Introduction à la réalité virtuelle II - L Homme et son environnement L environnement naturel de l Homme Les sens de l homme Étude et modélisation du mouvement humain Ergonomie, facteurs humains et réalité virtuelle Invariants et variabilité : antinomie ou complémentarité III - Percevoir le monde Théories de la perception : le monde comme mémoire externe Se déplacer et naviguer dans l espace Remplacer un sens par un autre : la suppléance perceptive IV - L Homme en mouvement Le contrôle de l action Le mouvement biologique : perception, reproduction, synthèse V - Interagir avec les objets et le monde Percevoir les objets Le contrôle adaptatif ou comment acquérir et maintenir une performance VI - L Homme dans un monde virtuel Immersion et présence La latence temporelle dans la boucle de réalité virtuelle Éthique, droit et réalité virtuelle VII - Les usages de la réalité virtuelle en sciences de la vie Interactions entre réalité virtuelle et sciences du comportement
VOLUME 2 : INTERFAÇAGE, IMMERSION ET INTERACTION EN ENVIRONNEMENT VIRTUEL I - Interfaçage Introduction à la réalité virtuelle Approche théorique et pragmatique de la réalité virtuelle II - Dispositifs matériels des interfaces motrices Les capteurs de localisation Les interfaces spécifiques de la localisation corporelle Les interfaces manuelles motrices III - Dispositifs matériels des interfaces sensori-motrices Commande d une interface à retour d effort IV - Dispositifs matériels des interfaces sensorielles Les interfaces tactiles Les interfaces visuelles Les interfaces à simulation de mouvement et l interface à simulation de climat Les interfaces olfactives V - Les techniques d interaction Les techniques d interaction pour les primitives comportementales virtuelles Les techniques d intégration multimodale en environnement virtuel VI - Aspects particuliers de l interaction en réalité virtuelle La restitution visuelle stéréoscopique Dispositifs et interfaces de restitution sonore spatiale Le Retour Pseudo-Haptique VII - Ergonomie de l interfaçage Concevoir et évaluer l interaction utilisateur-environnement virtuel
VOLUME 3 : LES OUTILS ET LES MODÈLES INFORMATIQUES DES ENVIRONNEMENTS VIRTUELS I - Introduction Introduction à la réalité virtuelle Modèles géométriques des environnements virtuels II - Modèles pour les rendus sensori-moteurs Modèles pour le rendu visuel Modèles pour le rendu sonore Modèles pour le rendu haptique Détection des collisions Modèles mécaniques III - Modèles pour le rendu comportemental Scénarios adaptatifs : le paradoxe du contrôle d agents autonomes Modèles pour l autonomie Modèles pour les humanoïdes Modèles pour les environnements naturels IV - Outils et environnements de développement OpenMASK : une plate-forme logicielle Open Source pour la réalité virtuelle ARéVi EVI3d : une plate-forme de développement d applications de RV&A Virtools et la réalité virtuelle La réalité virtuelle distribuée
VOLUME 4 : APPLICATIONS DE LA RÉALITÉ VIRTUELLE I - Introduction Introduction à la réalité virtuelle II - Les applications par fonction Réalité virtuelle et conception La réalité virtuelle pour l apprentissage humain III - Les applications par domaine d activités Explorations de données scientifiques et expérimentations virtuelles Applications de la réalité virtuelle aux troubles cognitifs et comportementaux Géosciences Industries manufacturières La réalité virtuelle dans le groupe PSA Peugeot Citroën Architecture, urbanisme et paysage Réalité virtuelle et archéologie Apport de la réalité virtuelle à la création artistique L interactivité sensorielle au service de la création artistique contemporaine Applications des techniques de réalité virtuelle en milieu militaire
TABLE DES MATIÈRES I Introduction 1 1 Introduction à la réalité virtuelle 3 1.1 Fondement de la réalité virtuelle...................... 3 1.1.1 Introduction................................ 3 1.1.2 Définitions de la réalité virtuelle..................... 5 1.2 Modèle de référence pour l immersion et l interaction.......... 10 1.2.1 L approche «instrumentale» pour l immersion et l interaction......................... 10 1.2.2 Le modèle de référence en RV...................... 12 1.3 Structuration du traité de la réalité virtuelle................ 13 1.3.1 l Homme et l environnement virtuel................... 15 1.3.2 L interfaçage, l immersion et l interaction en environnement virtuel.................... 15 1.3.3 Les applications de la réalité virtuelle.................. 16 1.4 Présentation du contenu du volume «Les outils et les modèles informatiques des environnements virtuels».................. 16 1.4.1 La modélisation des environnements virtuels.............. 17 1.4.2 Modélisation et simulation........................ 21 1.4.3 Réalité virtuelle et complexité...................... 24 1.5 Références bibliographiques........................ 29 2 Modèles géométriques des environnements virtuels 33 2.1 Introduction................................ 33
xviii Le traité de la réalité virtuelle 2.1.1 Types d objets.............................. 34 2.1.2 Propriétés des modèles.......................... 36 2.2 Modèles volumiques............................ 36 2.2.1 Énumération spatiale........................... 37 2.2.2 Constructive Solid Geometry....................... 39 2.3 Modèles surfaciques............................ 41 2.3.1 Utilisation de surfaces planes....................... 41 2.3.2 Utilisation de surfaces non planes.................... 42 2.4 Géométrie algorithmique......................... 46 2.4.1 Transformation d un volume en surface................. 46 2.4.2 Maillage polygonal d un nuage de points................ 47 2.4.3 Décimation de maillages......................... 51 2.5 Optimisation des modèles pour la réalité virtuelle............. 54 2.5.1 Texturation................................ 55 2.5.2 Niveaux de détails............................ 56 2.6 Références bibliographiques........................ 58 II Modèles pour les rendus sensori-moteurs 61 3 Modèles pour le rendu visuel 63 3.1 Les rendus pour la réalité virtuelle..................... 63 3.1.1 Introduction................................ 63 3.1.2 Rendu temps réel............................. 63 3.1.3 Qualité et perception........................... 64 3.2 Modèles d éclairage et d ombrage..................... 65
Table des matières xix 3.2.1 Modélisation de l apparence....................... 65 3.2.2 Modélisation de l éclairage........................ 74 3.3 Rendu et perception............................ 80 3.3.1 Modèles de vision et calculs de rendu.................. 80 3.3.2 Reproduction de tons........................... 83 3.4 Références bibliographiques........................ 86 4 Modèles pour le rendu sonore 93 4.1 Introduction................................ 93 4.1.1 Problématique du rendu sonore...................... 93 4.1.2 Le pipeline de rendu sonore....................... 94 4.2 Acoustique et traitement du signal..................... 95 4.2.1 Quelques notions d acoustique...................... 96 4.2.2 Outils de traitement du signal pour le rendu audio............ 101 4.3 Synthèse de sources sonores virtuelles.................. 103 4.3.1 Synthèse par enregistrements et «textures sonores»........... 103 4.3.2 Synthèse par modèles physiques et analyse-synthèse.......... 105 4.3.3 Propriétés des sources sonores. Sources ponctuelles et étendues................ 106 4.4 Modélisation de la propagation du son.................. 107 4.4.1 Acquisition de réponses impulsionnelles et rendu............ 107 4.4.2 Modèles physiques pour la propagation du son............. 109 4.4.3 Modèle générique des effets environnementaux............. 116 4.4.4 Intégration des effets de propagation dans le pipeline de rendu sonore................ 120 4.5 Rendu audio structuré et optimisations perceptives............ 124 4.5.1 Importance des sources sonores et masquages auditifs......... 125
xx Le traité de la réalité virtuelle 4.5.2 Niveau de détail et regroupement spatial des sources, «imposteurs sonores»............... 127 4.5.3 Représentations progressives des signaux et scalabilité des traitements.................. 128 4.6 Rendu audio 3D par manipulation directe d enregistrements in-situ........................ 129 4.6.1 Rendu à partir d enregistrements coïncidents et décompositions directionnelles............... 129 4.6.2 Rendu a partir d enregistrements non-coïncidents............ 130 4.6.3 Extraction d une scène structurée à partir d enregistrements................... 130 4.7 Références bibliographiques........................ 131 5 Modèles pour le rendu haptique 141 5.1 Le couplage simulation/dispositif haptique................ 141 5.2 Le calcul du rendu haptique........................ 144 5.2.1 Rendus par schémas d impédance : calcul des forces.......... 144 5.2.2 Rendus par schémas d admittance : calculs des contraintes....... 145 5.2.3 Des modèles primitifs aux modèles objets (proxy)............ 145 5.2.4 Modélisation de l environnement pour le rendu haptique........ 148 5.3 L adaptation fréquentielle......................... 149 5.3.1 Les représentations intermédiaires.................... 150 5.4 Biblothèques haptiques.......................... 153 5.5 Conclusion................................. 153 5.6 Références bibliographiques........................ 154 6 Détection des collisions 157 6.1 Détection de collision entre primitives................... 157 6.1.1 Définition de la collision......................... 158
Table des matières xxi 6.1.2 Détection spatiale entre polyèdres convexes............... 158 6.1.3 Détection spatiale entre polyèdres quelconques............. 161 6.1.4 Les approches temporelles........................ 164 6.1.5 Bilan sur la détection entre objets et problèmes ouverts......... 167 6.2 Le pipeline de détection.......................... 168 6.2.1 Problématique.............................. 168 6.2.2 La recherche de proximité (broad-phase)................ 169 6.2.3 La détection approximative (narrow-phase)............... 171 6.2.4 Accélération temporelle continue.................... 176 6.2.5 Bilan de l accélération.......................... 177 6.3 Traitement de la collision......................... 177 6.4 Conclusion................................. 178 6.5 Références................................. 179 7 Modèles mécaniques 185 7.1 Modèles à base de particules........................ 185 7.1.1 Rappels.................................. 185 7.1.2 Nuages de particules........................... 186 7.1.3 Masses-ressorts.............................. 187 7.1.4 Éléments finis............................... 189 7.1.5 Formulations lagrangiennes....................... 191 7.1.6 Intégration du temps........................... 191 7.2 Solides en contact............................. 192 7.2.1 Dynamique du solide........................... 192 7.2.2 Calcul analytique des forces de contact................. 195 7.2.3 Pénalités................................. 196
xxii Le traité de la réalité virtuelle 7.2.4 Frottement................................ 197 7.2.5 Impulsions................................ 199 7.2.6 Impulsions intégrées........................... 201 7.2.7 Méthodes à base d optimisation..................... 202 7.2.8 Regroupements optimaux......................... 203 7.3 Solides articulés.............................. 204 7.3.1 Dynamique directe en coordonnées absolues.............. 204 7.3.2 Dynamique directe en coordonnées relatives............... 206 7.3.3 Méthode à base de réseaux de neurones................. 207 7.4 Identifier un modèle à partir de la cinématique.............. 207 7.4.1 Introduction................................ 207 7.4.2 La technique évolutionnaire....................... 208 7.4.3 Stratégie d évolution : un paramétrage adapté aux grandeurs physiques.................... 208 7.4.4 Fonctions de coût adaptée aux systèmes masses-ressorts........ 209 7.4.5 Applications et limites.......................... 210 7.4.6 Trajectoire réelle : identification..................... 211 7.5 Références bibliographiques........................ 213 III Modèles pour le rendu comportemental 217 8 Scénarios adaptatifs : le paradoxe du contrôle d agents autonomes 219 8.1 Introduction................................ 219 8.2 Etat de l art................................. 219 8.3 Le langage SLuHrG............................ 220 8.3.1 Introduction................................ 220
Table des matières xxiii 8.3.2 Langage de scénario........................... 221 8.3.3 Grammaire du langage.......................... 222 8.3.4 Gestion des acteurs............................ 228 8.3.5 Ordonnancement............................. 230 8.3.6 Conclusion................................ 232 8.4 Exemple de scénario............................ 232 8.5 Conclusion................................. 238 8.6 Références bibliographiques........................ 238 9 Modèles pour l autonomie 241 9.1 Introduction................................ 241 9.1.1 Interdisciplinarité............................. 241 9.1.2 Transdisciplinarité............................ 242 9.2 Principe d autonomie........................... 243 9.2.1 Exploitation des modèles......................... 243 9.2.2 Modélisation de l utilisateur....................... 245 9.2.3 Autonomisation des modèles....................... 246 9.2.4 L autonomie en réalité virtuelle..................... 249 9.3 Entités autonomes............................. 250 9.3.1 Approche multi-agents.......................... 252 9.3.2 Simulation multi-agents participative.................. 253 9.3.3 Métaphore d Ali Baba.......................... 254 9.3.4 Expérimentation in virtuo........................ 256 9.4 L autonomie par construction....................... 257 9.4.1 Hypothèse énactive............................ 257 9.4.2 Modélisation énactive.......................... 260
xxiv Le traité de la réalité virtuelle 9.4.3 Premiers résultats............................. 263 9.5 Conclusion................................. 264 9.6 Références bibliographiques........................ 265 10 Modèles pour les humanoïdes 273 10.1 Introduction................................ 273 10.2 L humain virtuel.............................. 274 10.2.1 H-ANIM................................. 274 10.2.2 CAL3D.................................. 276 10.3 Animation d humains virtuels....................... 277 10.3.1 Animation d humains par cinématique directe.............. 277 10.3.2 Animation d humains par cinématique inverse.............. 278 10.3.3 Capture de mouvements en temps réel.................. 279 10.3.4 Adaptation en temps réel de mouvements capturés........... 281 10.3.5 Utilisation de la dynamique....................... 285 10.4 Modéliser le comportement humain.................... 285 10.5 Modèles de comportement réactif..................... 287 10.5.1 Les familles de modèle.......................... 287 10.5.2 HPTS : un outil de spécification de comportements réactifs....... 289 10.5.3 Les modèles de perception........................ 290 10.5.4 Les modèles d actions sur les objets................... 292 10.5.5 Les approches compétitives et coopératives de sélection d action(s)..................... 292 10.6 Modèles de comportement cognitif.................... 294 10.6.1 Introduction................................ 294 10.6.2 Approches cognitives en animation................... 296
Table des matières xxv 10.6.3 Modélisation des émotions........................ 298 10.7 Modèles de comportements collectifs et sociaux............. 298 10.7.1 Introduction................................ 298 10.7.2 La locomotion.............................. 298 10.7.3 Modèles de navigation réactive d un humain virtuel dans son environnement.................... 300 10.7.4 Comportements de foules......................... 302 10.7.5 Modèles de simulation de foule..................... 303 10.8 Conclusion................................. 305 10.9 Références bibliographiques........................ 306 11 Modèles pour les environnements naturels 315 11.1 Introduction................................ 315 11.2 Éléments de méthodologie........................ 315 11.2.1 Verrous scientifiques........................... 316 11.2.2 Méthode de construction des modèles.................. 317 11.2.3 Outil générique pour la modélisation multi-échelles........... 319 11.3 Etude de cas................................ 319 11.3.1 Prairies agitées par le vent........................ 320 11.3.2 Mer quasi-linéaire............................ 321 11.3.3 Ruisseaux................................. 322 11.3.4 Nuages, fumées et avalanches...................... 323 11.4 Modélisation énactive des états de mer.................. 324 11.4.1 La mer des marins : un défi pour la physique.............. 325 11.4.2 Choix des entités énactives pour la mer des marins........... 325 11.5 Conclusion : psychologie ou physique?.................. 329
xxvi Le traité de la réalité virtuelle 11.5.1 Visualisation : une réhabilitation du «trompe-l œil»........... 329 11.5.2 Vers une nouvelle méthodologie pour la simulation........... 329 11.6 Références bibliographiques........................ 330 IV Outils et environnements de développement 333 12 OpenMASK : une plate-forme logicielle Open Source pour la réalité virtuelle 335 12.1 Introduction................................ 335 12.2 Concepts d OpenMASK.......................... 336 12.2.1 Noyau - une machine virtuelle...................... 337 12.2.2 Objet de simulation fréquentiel et/ou réactif............... 339 12.2.3 Applicatif configurable.......................... 343 12.2.4 Session distribuable............................ 343 12.2.5 Conclusion................................ 344 12.3 Services d OpenMASK pour la réalité virtuelle.............. 345 12.3.1 Initialisations............................... 345 12.3.2 Visualisations interactives........................ 345 12.3.3 Sonorisations............................... 348 12.3.4 Interactions................................ 349 12.3.5 Coopérations............................... 351 12.3.6 Conclusion................................ 355 12.4 OpenMASK : Plate-forme d intégration et de capitalisation de services........................ 355 12.4.1 Handball - tirs au but........................... 355 12.4.2 GVT - formation à la maintenance.................... 357 12.4.3 Musée virtuel de la photographie contemporaine............ 359
Table des matières xxvii 12.4.4 Collaborations haptiques distribuées................... 361 12.5 Conclusion................................. 365 12.6 Références bibliographiques........................ 365 13 ARéVi 369 13.1 Motivations................................. 369 13.2 Les services de base............................ 370 13.2.1 L architecture retenue........................... 370 13.2.2 Les entités autonomes.......................... 372 13.2.3 La communication par messages..................... 373 13.2.4 Liaison avec d autres outils........................ 374 13.3 Les services 3D.............................. 375 13.3.1 La structure retenue............................ 376 13.3.2 Les objets graphiques........................... 378 13.3.3 Les moyens de détection......................... 379 13.3.4 Les systèmes de particules........................ 380 13.3.5 Les interacteurs.............................. 380 13.3.6 La visualisation stéréoscopique..................... 381 13.4 La distribution............................... 382 13.4.1 Le modèle retenu............................. 383 13.4.2 La sérialisation.............................. 384 13.4.3 Démarche de mise en œuvre....................... 385 13.5 Les humanoïdes.............................. 385 13.5.1 Le principe................................ 386 13.5.2 Les squelettes............................... 386 13.5.3 L animation................................ 387
xxviii Le traité de la réalité virtuelle 13.5.4 La représentation............................. 388 13.5.5 Démarche de mise en œuvre....................... 389 13.6 Bilan et perspectives............................ 389 14 EVI3d : une plate-forme de développement d applications de RV&A 393 14.1 Introduction................................ 393 14.2 Gestion de la multimodalité........................ 393 14.2.1 Multimodalité en entrée......................... 394 14.2.2 Multimodalité en sortie.......................... 395 14.2.3 Cluster graphique et cluster de rendu multimodal............ 396 14.3 Conclusion................................. 398 14.4 Références bibliographiques........................ 398 15 Virtools et la réalité virtuelle 399 15.1 Les outils logiciels de Virtools pour la réalité virtuelle............................. 399 15.1.1 La plate-forme de développement Virtools Dev............. 399 15.1.2 Les outils logiciels autour de la plate-forme............... 399 15.1.3 La Schématique Virtools......................... 401 15.1.4 Le VR Pack................................ 403 15.2 Virtools et ses marchés........................... 405 15.2.1 Le jeu vidéo................................ 407 15.2.2 Le marketing en ligne et multimédia................... 407 15.2.3 Les applications industrielles....................... 408 15.2.4 La société Virtools............................ 409 15.3 Références bibliographiques........................ 409
Table des matières xxix 16 La réalité virtuelle distribuée 411 16.1 Introduction................................ 411 16.2 Bref historique............................... 412 16.3 Architecture des systèmes de RVD.................... 413 16.3.1 Architecture client-serveur centralisée.................. 415 16.3.2 Architecture client-serveur distribuée.................. 415 16.3.3 Architecture client-serveur distribuée avec plusieurs serveurs........................ 415 16.3.4 Architecture égal à égal (peer to peer) distribuée point à point.......................... 416 16.3.5 Architecture égal à égal distribuée en mode diffusion.......... 417 16.4 Techniques d optimisation des systèmes de RVD............. 418 16.5 Références bibliographiques........................ 423
xxx Le traité de la réalité virtuelle
Première partie Introduction
1 INTRODUCTION À LA RÉALITÉ VIRTUELLE Philippe Fuchs, Guillaume Moreau et Jacques Tisseau 1.1 FONDEMENT DE LA RÉALITÉ VIRTUELLE 1.1.1 INTRODUCTION Il est naturel pour l homme de s échapper de la réalité quotidienne pour différentes raisons (artistiques, culturelles ou professionnelles). L évolution des techniques aidant, l homme a pu satisfaire ce besoin par des représentations principalement visuelles ou sonores, mais figées du monde. Figées dans le sens où l utilisateur ne peut observer la représentation qu en spectateur, que ce soit une peinture, une photographie, un film d images réelles ou d images de synthèse. La réalité virtuelle lui offre une dimension supplémentaire en lui procurant un environnement virtuel dans lequel il devient acteur. Que le lecteur ne s y méprenne pas, la nouveauté n est pas dans la création d environnements virtuels plus performants dans leur représentation, mais bien dans la possibilité de pouvoir «agir virtuellement» dans un monde artificiel (ou «interagir», vu sous un angle plus technique). La réalité virtuelle oscille, dans l esprit du grand public, entre phantasme et technologie, entre rêve et réalité. Il est évident que de nombreux mystères entourent cette discipline, le premier d entre eux étant contenu dans l oxymoron qui la nomme, associant deux termes en apparente opposition. Qui n a pas rêvé ou été effrayé par les réalisations littéraires et cinématographiques de la science-fiction, exploitant certains aspects techniques sensés être propres à la réalité virtuelle? L enjeu de cet ouvrage, outre celui de décrire un état de l art sur le sujet, est de délimiter correctement le domaine permettant de démystifier la réalité virtuelle. La réalité virtuelle ne peut être envisagée que depuis peu, grâce à l augmentation importante de la puissance intrinsèque des ordinateurs, en particulier la possibilité de créer en temps réel des images de synthèse et de permettre une interactivité, toujours en temps réel, entre l utilisateur et le monde virtuel. Le lecteur doit bien noter que ce sont des évolutions techniques qui ont permis son essor, et donc, par déduction, qui en contraignent sa portée, due aux limites inhérentes de la technique. N écoutons pas les dires de certains, qui ont proclamé un peu vite, que le «Grand Jour du Virtuel» était arrivé! Essayons simplement de relever ce défi pour franchir cette nouvelle étape («agir dans le virtuel») en sachant que la route sera longue mais aussi passionnante. La réalité virtuelle n est pas née spontanément. Comme toute nouvelle technique, elle a eu des antécédents qui ne s appelaient pas «réalité virtuelle». Principalement, les simulateurs de transport ont permis à des professionnels d interagir avec un environnement partiellement 1 virtuel, depuis 50 ans environ (on faisait de la réalité virtuelle sans le savoir, comme M. Jourdain faisait de la prose...). La réalité virtuelle implique par essence de nombreux domaines : 1 Le poste de conduite de la voiture, de l avion ou du train n est pas simulé mais réel.
4 Le traité de la réalité virtuelle Dans le domaine des sciences et des techniques, la réalité virtuelle émarge au domaine des STIC (Sciences et Techniques de l Information et de la Communication). Néanmoins, le cadre de la réalité virtuelle dépasse celui de l information et de la communication, puisqu il s agit d agir dans un monde virtuel. De nombreuses disciplines concourent à produire de nouvelles avancées dans le domaine de la réalité virtuelle : l informatique propose et continue de développer de nouveaux algorithmes pour le traitement de modèles numériques et la création des environnements virtuels interactifs ; la téléopération et la robotique, par la capacité à développer de nouveaux organes actifs coopérants avec l humain ; la mécanique, l optique et l acoustique fournissant les modélisations numériques des phénomènes physiques. Dans le domaine des sciences humaines et des sciences du vivant, l Homme «utilisateur» est placé au cœur de la démarche de développement des technologies de la réalité virtuelle, ce qui implique une forte synergie avec de nombreuses disciplines de ce domaine. Citons ainsi à titre d exemples : la psychologie expérimentale et les sciences du comportement développent des théories et des protocoles d investigation concernant l étude des actions et des perceptions humaines dans des conditions contrôlées, en environnement réel comme dans des environnements virtuels ; l ergonomie développe des méthodes et des connaissances visant à améliorer la prise en compte des facteurs humains dans la conception et l évaluation des environnements de réalité virtuelle, afin que ceux-ci soient en adéquation avec les objectifs des utilisateurs, les conditions d utilisation, les exigences de confort et de sécurité, etc. la psychologie cognitive étudie la nature des processus cognitifs du sujet plongé dans une activité se déroulant dans un univers virtuel, qu il s agisse de mieux comprendre les particularités de ces environnements ou bien d exploiter les mondes virtuels l expérimentation et la modélisation ; la physiologie, la neurobiologie, etc. À ce titre, la réalité virtuelle occupe, par le couplage des sciences humaines et des sciences de l ingénieur, une position particulière dans le schéma scientifique habituel. Cette position représente un avantage par l interdisciplinarité intrinsèque du domaine. Cette position est en même temps une difficulté à surmonter, d une part pour la formation des acteurs du domaine, d autre part pour la reconnaissance de ce fondement multidisciplinaire par les divers disciplines qui la fécondent. Par exemple, il serait réducteur de considérer la réalité virtuelle comme une simple branche de l informatique. Si les ordinateurs permettent effectivement de programmer et de simuler des mondes virtuels, l interaction de l homme avec ceux-ci n est possible qu au travers de logiciels et de dispositifs techniques compatibles avec les processus cognitifs, perceptifs et sociaux humains. En retour, mieux comprendre et formaliser les difficultés et les particularités de la cognition et de l interaction dans les mondes virtuels offre une fondation empirique pour stimuler la recherche et l innovation. Si la réalité virtuelle s appuie aujourd hui sur l informatique pour son essor, notre opinion est que le domaine de la réalité virtuelle deviendra à terme un secteur de recherche et d activité indépendant.
Introduction à la réalité virtuelle 5 1.1.2 DÉFINITIONS DE LA RÉALITÉ VIRTUELLE 1.1.2.1 Origine et image réductrice de la réalité virtuelle Le terme «réalité virtuelle» est employé depuis plus de quinze ans. Ce terme est discutable et a été discuté par certains. Cet oxymoron vient de l expression anglaise virtual reality, introduite aux États-Unis dans les années 80 par Jaron Lanier. Cette appellation étant maintenant courante, il est vain de vouloir la modifier. Cependant, comme le rappelle J.P. Papin, en anglais, virtual signifie «de fait», «pratiquement». La traduction française ne rend donc pas compte de cette signification. Il aurait fallu parler de tenant lieu de réalité ou de réalité vicariante ou mieux encore d environnement vicariant. Le mot vicariant est utilisé en psychologie et en physiologie, où il désigne respectivement un processus, une fonction ou un organe qui se supplée à un autre. Définir la réalité virtuelle est une tâche indispensable. On trouve encore dans la littérature des définitions qui mélangent malencontreusement la finalité de la réalité virtuelle, ses fonctions, ses applications et les techniques sur lesquelles elle repose. Certains sont allés jusqu à définir la réalité virtuelle par le seul fait d exploiter tel ou tel dispositifs d interaction. C est cette image réductrice qui a été malheureusement véhiculée dans les médias : une personne équipée d un visiocasque 2 avec différentes commandes pour interagir (gant de données, manette, volant, etc.) et reliées à un ordinateur (Figure 1.1). Il faut rejeter ces approches, à la fois parce qu elles sont sont trop centrées sur une technologie particulière et, à la fois, parce qu elles sont trop fortement restrictive quant aux enjeux scientifiques liés à la complexité des dimensions impliquées dans l interaction entre l utilisateur humain et les environnements virtuels. Dans la suite de cette partie, nous proposons des définitions à plusieurs niveaux pour clarifier le domaine de la réalité virtuelle. Ces termes et ces définitions proviennent de discussions au sein du comité de rédaction de ce traité concernant la définition, le périmètre du domaine et sa finalité, à partir des définitions proposées dans les précédentes éditions du traité et les acceptions communément admises par la communauté scientifique internationale. Le comité de rédaction propose au lecteur les traductions en français pour certains termes ou expressions anglo-saxons typiques du domaine. Même si des définitions voisines continuent d exister, il existe aujourd hui un consensus de fait dans la communauté scientifique internationale concernant la réalité virtuelle. En témoignent plusieurs grandes manifestations scientifiques internationales traitant de «Virtual Reality». 1.1.2.2 Finalité de la réalité virtuelle Avant de se focaliser sur des fonctions ou des techniques, il semble judicieux de déterminer d abord la finalité de la réalité virtuelle que partage tous les acteurs. Après avoir étudié l objectif commun de chacune de ses applications, nous pouvons affirmer que [Fuchs, 1996], [CRTRV, 2004] : La finalité de la réalité virtuelle est de permettre à une personne (ou à plusieurs) une activité sensori-motrice et cognitive dans un monde artificiel, créé numériquement, qui peut être imaginaire, symbolique ou une simulation de certains aspects du monde réel. 2 Visiocasque : traduction de «Head Mounted Display». On peut aussi employer l expression «casque immersif».
6 Le traité de la réalité virtuelle Figure 1.1 : Simulation de la conduite d une voiture avec visiocasque ou sur écran de simulateur (Copyright Photo PSA Peugeot Citroën) Deux éléments sont discutés et précisés à partir de cette finalité. Le premier concerne la nature de l interaction de l utilisateur avec l environnement donnant accès à un monde artificiel. Les termes «activité sensori-motrice» sont employés pour signifier qu au fondement de la réalité virtuelle est l idée que la personne perçoit et agit physiquement avec les entités et éléments du monde virtuel. Bien évidemment, il en découle que la personne a aussi une activité au plan cognitif. Mais avoir une activité cognitive dans un environnement virtuel sans que cela se traduise par une activité physique (sensorimotrice) est hors du domaine de la réalité virtuelle. Nous préciserons par la suite ces concepts de base. Le second élément concerne la diversité des origines des mondes représentés dans l environnement virtuel. En cela cette définition se distingue d une vision simpliste de la réalité virtuelle comme «simple copie» du monde «réel». Les trois principales origines sont discutées à la suite. Une simulation de certains aspects du monde réel : ceux-ci sont à déterminer lors de la conception de l application. Nous verrons que cette phase initiale de conception est fondamentale et doit être analysée explicitement. L erreur, souvent rencontrée, est celle du concepteur qui recherche le plus grand «degré de réalisme». Cette approche erronée est entreprise sans se soucier de savoir précisément quels sont les aspects de la réalité que l application exige. L idée naïve de vouloir, si possible, le comportement du monde virtuel entièrement identique à celui du monde réel est absurde. Si on veut faire une réalité «virtuelle», c est bien dans le but de modifier des aspects de la «vraie» réalité ; par exemple, pour la formation sans danger réel pour le formé dans un environnement virtuel, pour l étude de futurs produits, non encore matérialisé. Ce n est donc pas seulement à cause de difficultés techniques que la simulation virtuelle est différente de la réalité. Réciproquement, la réalité virtuelle permet aussi de simuler différemment des phénomènes, le réalisme «allant au-delà» du réel. Nous obtenons ainsi une simulation du monde réel, qui est «augmentée» par des représentations plus adéquates, quoique irréelles, d objets ou de phénomènes physiques ; par exemple, des objets affichés en fil de fer ou en éclaté, des phénomènes physiques invisibles (radioactivité, infrarouges, etc.) représentés virtuellement. Un monde symbolique : on peut aussi exploiter des représentations symboliques pour améliorer la compréhension du monde simulé. La réalité virtuelle est alors exploitée soit pour représenter un phénomène, (la structure de molécules, l écoulement de
Introduction à la réalité virtuelle 7 fluide,...), soit pour ajouter au monde réel simulé des concepts symboliques. Ceux-ci permettent à l utilisateur de se faire une meilleure représentation mentale de son environnement. Par exemple : nous pouvons afficher des informations schématiques pour l utilisateur, lui permettant de mieux saisir la structure d un mécanisme ou la planification d une tâche à accomplir ; nous pouvons représenter la potentialité d un danger par le simple changement de couleur d objets, virant au rouge. Un monde imaginaire : la virtualité est employée pour créer un monde irréel, sorti de l imagination de l artiste ou de l auteur de science-fiction. Dans ce cas, le monde créé n a pas l obligation d être une simulation du monde réel, en particulier pour les lois liées aux entités virtuelles. En conclusion, le lecteur doit retenir qu il ne faut pas parler d un «degré de réalisme», ce terme laissant supposer d une part, qu au mieux le virtuel est identique au réel et, d autre part, que la réalité virtuelle a pour seule ambition de rechercher la meilleure copie du réel. Il y a bien des façons variées d exploiter les potentialités de la réalité virtuelle, les trois cas pouvant évidemment être associés dans une même application. Le concepteur de dispositif de réalité virtuelle doit aussi se poser une autre question. Cette question concerne la frontière entre le monde simulé virtuellement et le monde réel, dans lequel se situe l utilisateur. Au moment de la conception d un dispositif en réalité virtuelle, l analyse de l application doit notamment permettre de déterminer la frontière entre les mondes réel et virtuel. Par exemple, dans un simulateur de transport, la cabine est souvent tout ou partie d une maquette physique réelle. Pour l étude esthétique d une planche de bord, celle-ci est virtuelle, le volant pouvant être réel ou virtuel. 1.1.2.3 Définition fonctionnelle En 1995, Fuchs a proposé une taxonomie basée sur les fonctionnalités «théoriques» : face à sa propre perception de la réalité, l homme a conceptualisé les notions de temps et d espace sur lequel il ne peut interagir que suivant des lois physiques immuables. La réalité virtuelle va lui permettre de s extraire de la réalité physique pour changer virtuellement de temps, de lieu et(ou) de type d interaction : interaction avec un environnement simulant la réalité ou interaction avec un monde imaginaire ou symbolique. Cette définition fait allusion à l exigence inverse des auteurs des tragédies littéraires du XVIIe siècle prônant la règle des trois unités de temps, de lieu et d action. Nous utiliserons cette approche qui permet une taxonomie fonctionnelle des applications de la réalité virtuelle selon les combinaisons de ces trois fonctions. 1.1.2.4 Définition technique Une définition plus technique et littérale de la réalité virtuelle va s attacher à caractériser le domaine par une phrase compacte et suffisamment consensuelle pour que les
8 Le traité de la réalité virtuelle acteurs du domaine s y reconnaissent. Deux mots sont la clef de voûte de la réalité virtuelle : l immersion et l interaction. La définition technique de la réalité virtuelle est [Arnaldi e.a., 2003] : La réalité virtuelle est un domaine scientifique et technique exploitant l informatique (1) et des interfaces comportementales (2) en vue de simuler dans un monde virtuel (3) le comportement d entités 3D, qui sont en interaction en temps réel (4) entre elles et avec un ou des utilisateurs en immersion pseudo-naturelle (5) par l intermédiaire de canaux sensori-moteurs. Cette définition introduit une terminologie nécessitant quelques explications permettant de la situer par rapport aux arguments développés dans l introduction : 1. il faut évidemment exploiter les potentialités de l informatique, matérielles et logicielles, pour réaliser techniquement un environnement virtuel interactif qui puisse être interfacé avec l utilisateur. La simulation est dynamique : les entités (objets, personnages virtuels, etc.) sont animées en temps réel suivant des lois physiques (mécaniques, optiques, acoustiques, etc.) et des lois comportementales (psychologiques, sociales, affectives, etc.) ; 2. nous exploitons des interfaces matérielles de la réalité virtuelle, que nous appelons «interfaces comportementales» (voir le chapitre 2 du volume 2 de ce traité au sujet de cette appellation). Elles sont composées «d interfaces sensorielles», «d interfaces motrices» et «d interfaces sensori-motrices». Les interfaces sensorielles informent l utilisateur par ses sens de l évolution du monde virtuel. Les interfaces motrices informent l ordinateur des actions motrices de l homme sur le monde virtuel. Les interfaces sensori-motrices informent dans les deux sens. Le nombre et le choix de ces interfaces dépendent de l objectif poursuivi de l application ; 3. il faut créer un monde virtuel interactif et en temps réel. La création d un monde virtuel est une problématique majeure de la réalité virtuelle : la modélisation, la numérisation et le traitement informatique du monde virtuel. Nous pouvons noter le cas particulier d associer un monde réel avec un monde virtuel (techniques de la réalité augmentée) ; 4. l interaction en temps réel est obtenue si l utilisateur ne perçoit pas de décalage temporel (latence) entre son action sur l environnement virtuel et la réponse sensorielle de ce dernier. Cette contrainte est difficile à satisfaire. A défaut, on peut chercher à ne point infliger de perturbations au sujet par ce décalage temporel, même s il le perçoit ; 5. l utilisateur doit être en «immersion pseudo-naturelle» la plus efficace possible dans le monde virtuel. L immersion ne peut être naturelle car nous avons appris à agir naturellement dans un monde réel et non virtuel (des biais sensori-moteurs sont créés, d où le terme pseudo). Cette sensation est une notion en partie subjective qui dépend de l application et du dispositif utilisé (interfaces, logiciels, etc.). Nous parlerons en détail des concepts d immersion et d interaction qui doivent être bien définis et analysés à plusieurs niveaux. Les deux conditions, interaction et immersion, sont rarement réalisables «parfaitement» par rapport à l application envisagée. Par contre, elles doivent être en partie réalisées, même modestement, pour parler d un système basé sur les techniques de réalité virtuelle.
Introduction à la réalité virtuelle 9 Il résulte de cette analyse globale un principe fondamental de la réalité virtuelle. Ce principe est contenu dans la boucle de la figure 1.2. L utilisateur agit sur l environnement virtuel grâce à l usage d interfaces motrices qui captent ses actions (gestes, déplacements, voix, etc.). Ces activités sont transmises au calculateur qui l interprète comme une demande de modification de l environnement. Conformément à cette sollicitation de modification, le calculateur évalue les transformations à apporter à l environnement virtuel et les restitutions sensorielles (images, son, efforts, etc.) à transmettre aux interfaces sensorielles. Cette boucle en environnement virtuel interactif n est que la transposition de la boucle «perception, cognition, action» du comportement de l homme dans un mode réel. Mais deux contraintes majeures, inhérentes aux techniques, vont perturber la boucle «perception, cognition, action» et en conséquence le comportement du sujet : la latence et les incohérences sensori-motrices. MONDE REEL MONDE VIRTUEL Interfaces motrices UTILISATEUR(S) Perception Décision Action CALCULATEUR(S) Acquisition Simulation Restitution Interfaces sensorielles Figure 1.2 : La boucle «perception, cognition, action» passant par le monde virtuel La latence est le décalage temporel entre une action de l utilisateur sur les interfaces motrices et la perception des conséquences de cette action sur l environnement virtuel à travers les interfaces sensorielles. L existence de la latence dans la boucle influe sur la qualité de toute application de réalité virtuelle. Cette latence est un artéfact inhérent aux environnements virtuels interactifs. Les incohérences sensori-motrices sont d autres artefacts de la réalité virtuelle. Quel que soit le nombre de canaux sensoriels exploités dans une application, quelque soit le nombre d interactions à la disposition du sujet, il y a presque toujours des incohérences sensori-motrices par rapport au comportement sensori-moteur du sujet dans le monde réel. Ces incohérences sensori-motrices perturberont-t-elle le comportement du sujet? Ces deux problématiques sont développées dans le volume «l homme et l environnement virtuel» du traité.
10 Le traité de la réalité virtuelle 1.2 MODÈLE DE RÉFÉRENCE POUR L IMMERSION ET L INTERACTION 1.2.1 L APPROCHE «INSTRUMENTALE» POUR L IMMERSION ET L INTERACTION Dans tout dispositif de réalité virtuelle, l homme est au centre du système car l application virtuelle lui est adressée. Partant de ce constat, nous proposons d adopter une approche anthropocentrique (dirigée vers l homme) et non technocentrique (dirigée vers l ordinateur), symbolisée par le schéma anthropocentrique (Figure 1.3) de l immersion de l homme dans le monde virtuel, tel que celui-ci doit le percevoir en tant qu utilisateur. MONDE VIRTUEL INTERFACES SENSORIELLES vue ouïe Perception forces sur les muscles nerfs INTERFACES MOTRICES muscles toucher Centres nerveux goût odorat nerfs muscles INTERFACES SENSORIELLES kinesthésie INTERFACES MOTRICES MONDE VIRTUEL Figure 1.3 : Schéma anthropocentrique de la perception du monde virtuel par l homme Mais si le concepteur doit se référer à ce schéma anthropocentrique, objectif à réaliser pour l utilisateur, il doit aussi le compléter car il est nécessaire d analyser finement le processus d interfaçage et les dispositifs à concevoir. Nous avons fait le choix fondamental d analyser ce processus à trois niveaux. Au premier niveau, on peut schématiser l interfaçage entre l homme et le monde virtuel au niveau physique. Nous parlons dans ce cas d immersion et d interaction sensori-motrices, puisque physiquement l ordinateur est connecté au corps de l utilisateur au niveau de ses sens et de ses réponses motrices. Pourquoi employons-nous pour les trois niveaux les termes «Immersion ET Interaction»? Fondamentalement, comme nous l avons indiqué dans notre définition de la réalité virtuelle 3, celle-ci est basée sur l Immersion d une personne dans un monde virtuel. Mais nous y associons le terme Interaction, car parler seulement d immersion 3 Et toutes les définitions de la réalité virtuelle se rejoignent sur ces deux seules fonctionnalités.
Introduction à la réalité virtuelle 11 serait omettre l innovation de la réalité virtuelle, qui est de permettre au sujet d agir dans un monde virtuel. D où, au niveau physique d immersion et d interaction sensorimotrices, nous obtenons le schéma technocentrique de la figure 1.4. Figure 1.4 : Schéma technocentrique d Immersion et d Interaction sensori-motrices Le schéma précédent est restrictif car il ne représente que partiellement les problèmes et les solutions que tout concepteur doit étudier. A un deuxième niveau, nous devons analyser les processus cognitifs que le sujet va mettre en œuvre et qu il faudra assister dans son interfaçage avec l environnement virtuel : c est le niveau de l immersion et de l interaction cognitives. Notre approche est basée sur l activité du sujet et pas sur la seule métaphore de la communication, comme employée souvent dans l interfaçage entre un système et un utilisateur. L interfaçage comportemental pose une problématique de l interfaçage proche de celle d un opérateur avec sa machine ou avec son outil. Dans ce cas, il ne s agit pas seulement de penser l interfaçage au niveau physique (boutons de commande et retours d informations sur les actions), mais aussi de comprendre à partir de quels processus mentaux la personne va penser et agir. Comme l a décrit Rabardel dans son approche instrumentale [Rabardel, 1995], l interface est un médiateur d activité. Cette dernière repose matériellement sur des artefacts (ou instruments) et va être utilisée suivant des processus cognitifs de l utilisateur. Quelles vont être les catégories de processus cognitifs qui seront impliqués pour permettre une interaction et une immersion efficaces et, si possible, relativement naturelles, proposant alors une immersion et une interactivité pseudo-naturelles? Concrètement, tout concepteur peut exploiter deux catégories de processus cognitifs, que nous avons proposé de bien différencier : les Schèmes Comportementaux Importés (SCI) et les métaphores, cette dernière catégorie étant composée de deux sous-classes : métaphores avec ou sans substitution sensori-motrice. L utilisateur peut faire appel dans ses activités sensori-motrice et cognitive à certains automatismes qu il a assimilés dans le monde réel en les mettant en œuvre dans le contexte de l activité à réaliser dans l environnement virtuel. Ces automatismes sont à associer à la notion de schème proposée par le psychologue Piaget [Piaget e.a., 1979] : un schème est l organisation mentale des actions telles qu elles se transfèrent ou se généralisent lors de la répétition de cette action en des circonstances analogiques. D après Piaget, les schèmes constituent les moyens du sujet à l aide desquels il peut assimiler les situations et les objets auxquels il est confronté. Notons pour l instant, comme Piaget l a énoncé, l intelligence sensori-motrice parvient à résoudre un ensemble de problèmes d action (atteindre des objets, etc.) en construisant un système complexe de schèmes d assimilation et à organiser le réel selon un ensemble de règles spatiotemporelles et causales. D où notre postulat fondamental en réalité virtuelle :
12 Le traité de la réalité virtuelle Dans un environnement virtuel interactif, la personne exploite la même démarche que dans un monde réel, pour organiser le virtuel selon un ensemble de règles spatiotemporelles et causales. Dans le cas de difficultés techniques, économiques ou théoriques ne permettant pas d exploiter un Schème Comportemental Importé, nous pouvons contourner ces difficultés en employant une «métaphore». Au lieu d exploiter un comportement sensorimoteur et acquis de la personne, nous lui proposons, visuellement en général, une image symbolique de l action ou de la perception souhaitée. Par exemple dans un magasin virtuel, on peut proposer au consommateur de valider l achat d un produit en cliquant simplement sur son image et ensuite sur une icône représentant une caisse. Cette action devient symbolique et elle n est plus représentative de l action sensori-motrice dans un magasin réel, l immersion et l interaction y sont moins pseudo-naturelles. La métaphore peut aussi exploiter un sens spécifique, qui soit différent du sens stimulé dans l action réelle : métaphore avec substitution sensorielle, (de même pour une réponse motrice), par exemple la détection entre deux objets est rendue par leur changement de couleur. L étude de ces catégories de processus cognitifs est développée dans le chapitre 2 du volume «Interface, immersion et interaction en environnement virtuel» du traité. 1.2.2 LE MODÈLE DE RÉFÉRENCE EN RV Nous avons présenté deux niveaux d immersion et d interaction : le niveau sensorimoteur et le niveau cognitif. Un troisième niveau est nécessaire pour compléter notre démarche. Ce troisième niveau concerne l application de réalité virtuelle, dont l objectif est de s attacher à réaliser une immersion de l homme pour une activité donnée et non pour une simple immersion cognitive de l homme dans un monde artificiel. Nous parlons dans ce cas d immersion et d interaction fonctionnelles 4. C est le niveau fondamental que doit étudier en premier tout concepteur d application : quelles sont les activités (les fonctions) que doit réaliser le sujet? Le fondement de notre démarche est basé sur ce modèle hiérarchique à trois niveaux, en associant un découpage transversal entre le sujet et le monde virtuel : parallèlement aux différents niveaux d I 2 sensori-motrices et cognitives pour la personne, nous avons deux niveaux de fonctionnement logiciel pour le monde virtuel. Symétriquement aux I 2 sensori-motrices, l ordinateur doit gérer la partie logicielle temps réel (noyau temps réel et drivers pour les dispositifs matériels des interfaces), permettant une réalisation physique du monde virtuel. Cette dernière concerne la simulation basée sur les lois physiques (mécaniques, optiques, biomécaniques, etc.) agissant sur les objets et les êtres animés. Face aux I 2 cognitives, la partie logicielle spécifique de réalité virtuelle doit gérer la modélisation comportementale du monde virtuel. Cette partie logicielle doit fournir la simulation des comportements des êtres animés et des Aides Logicielles Comportementales (ALC), associées aux processus cognitifs pour faciliter les I 2 cognitives de la personne. L éventail des ALC exploitables, ALC sensori-motrices (ALS-M) et ALC cognitives (ALCog), est présenté dans le volume «Interface, immersion et interaction en environnement virtuel» du traité. Au niveau I 2 fonctionnelles, par rapport à l application et ses objectifs, il faut se poser la question suivante : quelles sont les activités que l utilisateur doit exécuter? Si 4 On utilise pour la suite la notation I 2 pour l immersion et l interaction.
Introduction à la réalité virtuelle 13 le lecteur veut prendre le temps d y réfléchir, il verra rapidement que dans toutes les applications RV, les activités du sujet sont toujours décomposables en quelques comportements de base que nous appelons les «Primitives Comportementales Virtuelles» (PCV). Il faut donc au niveau des I 2 fonctionnelles bien définir les PCV et leurs spécificités. Quelle que soit l application, ces dernières peuvent être regroupées en quatre catégories : observer le monde virtuel ; se déplacer dans le monde virtuel ; agir sur le monde virtuel ; communiquer avec autrui ou avec l application. Nous obtenons en final le schéma de référence de la réalité virtuelle (Figure 1.5) qui va nous servir de canevas dans notre démarche en réalité virtuelle [Fuchs e.a., 1999]. Avec ce schéma pluridisciplinaire 5, nous avons clarifié les notions d immersion et d interaction, qui seront détaillées dans le volume «Interfaçage, Immersion et Interaction en environnement virtuel». Figure 1.5 : Schéma technocentrique de référence en RV 1.3 STRUCTURATION DU TRAITÉ DE LA RÉALITÉ VIRTUELLE Le comité de rédaction du traité a souhaité que sa structuration soit basée essentiellement sur les problématiques générales de la réalité virtuelle. Dans toute application 5 A chaque bloc on peut associer : le physicien (pour les IC), le neurophysiologiste (sens et réponses motrices), l informaticien (logiciels), le psychologue (processus mentaux) et l ergonome (perception et motricité désirées).
14 Le traité de la réalité virtuelle de réalité virtuelle, la personne est en immersion et en interaction dans un environnement virtuel. Elle perçoit, décide et agit dans cet environnement, processus schématisé par la classique boucle «perception, cognition, action», qui doit être réalisée sous des contraintes technologiques, physiologiques et cognitives (Figure 1.2). De ce schéma découlent trois problématiques fondamentales de la réalité virtuelle (Figure 1.6) : Figure 1.6 : Schéma de la problématique de la réalité virtuelle, basé sur la boucle «perception, cognition, action» La problématique de l analyse et de la modélisation de l activité humaine en environnement réel et en environnement virtuel ; La problématique de l analyse, de la modélisation et de la réalisation de l interfaçage du sujet pour son immersion et son interaction dans un environnement virtuel ; La problématique de la modélisation et de la réalisation de l environnement virtuel. Ces trois problématiques, bien distinctes mais associées, permettent de proposer un cadre pour structurer le traité : Le volume : «l Homme et l environnement virtuel» ; Le volume : «L interfaçage, l immersion et l interaction en environnement virtuel» ; Le volume : «Les outils et les modèles informatiques des environnements virtuels». Un quatrième volume «Les applications de la réalité virtuelle» complète le traité en présentant l exploitation du domaine dans tous les secteurs de la société. Ce découpage en quatre volumes, inhérent à l ouvrage, ne doit pas déformer la vision du lecteur face aux trois problématiques qui sont fortement imbriquées. Il serait vain d aborder la réalité virtuelle sous l angle restrictif d un seul de ces trois points de vue. Le lecteur, comme tous les auteurs du traité l ont entrepris, devra faire un va-etvient incessant entre des chapitres de différents volumes pour bien assimiler des notions «technico-cognitives» que la boucle «perception, cognition, action» induit dans tout environnement artificiel. Quel est le comportement de l homme confronté à des latences et des incohérences sensori-motrices dans un monde virtuel? Quelles sont les interfaces et les techniques d interaction qui généreront ces latences et ces incohérences, mais qui aussi les maîtriseront? Quels sont les outils et les algorithmes informatiques qui limiteront la nuisance de ces artefacts? Voilà un des problèmes cruciaux qui sera traité transversalement dans les différents volumes du traité.
Introduction à la réalité virtuelle 15 1.3.1 L HOMME ET L ENVIRONNEMENT VIRTUEL Le volume «l Homme et l environnement virtuel» aborde la problématique de la réalité virtuelle sous l angle des sciences cognitives. L homme étant au centre du dispositif, il paraît incontournable de préciser comment l homme fonctionne en tant que système percevant le monde qui l entoure et comment il est capable d agir sur celui-ci. Sans être exhaustif, il s agit de donner des notions générales sur le fonctionnement humain, en insistant sur les aspects concernant directement la réalité virtuelle. Ces notions devront être prises en compte par les concepteurs de systèmes de réalité virtuelle. Délibérément, nous ne traiterons peu de la perception sur une base sensorielle, ni de la motricité en tant que telle. Celles-ci peuvent être trouvées aisément dans d autres ouvrages de base. Nous donnerons seulement dans un chapitre quelques informations essentielles sur les sens humains. Nous nous concentrons sur l interaction, entre l homme d une part et le monde et les objets qui le peuplent d autre part, en intégrant perception et action. On considérera ensuite quels sont les effets produit par ces systèmes sur l Homme et on terminera par quelques exemples d applications de la réalité virtuelle comme outil pour étudier le comportement humain. Le plan du volume est composé de sept parties : L homme dans son environnement naturel ; L homme en interaction avec le monde ; L homme en mouvement ; L interaction avec les objets ; Agir sur le monde ; L homme dans un monde virtuel ; Les usages de la réalité virtuelle comme outil en Sciences de la Vie. 1.3.2 L INTERFAÇAGE, L IMMERSION ET L INTERACTION EN ENVIRONNEMENT VIRTUEL Le volume «L interfaçage, l immersion et l interaction en environnement virtuel» présente la problématique de l interfaçage de l homme à un monde virtuel, aussi bien sous les aspects matériels, logiciels qu ergonomiques. Les technologies de la plupart des dispositifs des interfaces motrices, sensorielles et sensori-motrices sont décrites en expliquant les principes, les caractéristiques techniques et les limites des dispositifs. Ensuite, une analyse détaillée des techniques d immersion, d interaction et des primitives comportementales virtuelles est exposée, permettant de comprendre que l interfaçage ne se résume pas à un dispositif, mais est réalisé par un ensemble de concepts cognitifs et ergonomiques et de techniques matérielles et logicielles. L ergonomie de l interfaçage est abordée pour permettre à tout concepteur d application d avoir une démarche rigoureuse, fondée sur des principes et des méthodes qui ont fait leur preuve. Le plan du volume est composé de quatre parties : Concepts de base, approche théorique et pragmatique de l interfaçage ; Aspects matériels de l interfaçage comportemental; Techniques d interaction, aspect logiciel de l interfaçage ; L ergonomie de l interfaçage.
16 Le traité de la réalité virtuelle 1.3.3 LES APPLICATIONS DE LA RÉALITÉ VIRTUELLE Le volume «Les applications de la réalité virtuelle» présente l exploitation des potentialités de la réalité virtuelle dans les principaux secteurs de la société. Une classification à «deux axes» est proposée sous l angle des différentes fonctionnalités génériques de la réalité virtuelle et sous l angle des divers secteurs d activités socio-économiques. Différents aspects seront traités dans les chapitres : les potentialités de la réalité virtuelle par rapport au domaine concerné, les axes de recherches actuelles et les aspects technico-économiques. Divers exemples représentatifs seront détaillés dans le but de permettre aux lecteurs de concrétiser les différents aspects exposés au cours des chapitres. Le plan du volume est composé de trois parties : Introduction et classifications des applications ; La conception et la formation ; Les applications des principaux secteurs socio-économiques : sciences, psychothérapie, environnement, industries manufacturières, architecture et urbanisme, archéologie, art et défense. 1.4 PRÉSENTATION DU CONTENU DU VOLUME «LES OUTILS ET LES MODÈLES INFORMATIQUES DES ENVIRONNEMENTS VIRTUELS» Le volume «Les outils et les modèles informatiques des environnements virtuels» expose la conception et la réalisation de l environnement virtuel. Celui-ci, généré informatiquement, doit être modélisé numériquement. Les modèles des objets, des êtres animés, de leurs lois physiques et comportementales doivent être conçus sous la forte contrainte d être exploitables en temps réel, imposée par l objectif de l instantanéité de la boucle «perception, cognition, action». L environnement virtuel à créer pouvant être représentatif de n importe quel environnement réel, nous comprenons aisément que le défi informatique est immense : modéliser numériquement en temps réel toute entité et tout phénomène du monde réel. Si la modélisation visuelle d objets rigides est bien développée, ce n est pas encore le cas des modélisations non visuelles (mécaniques, acoustiques, etc.) pour des solides déformables. Concernant les modélisations des êtres vivants, bien des travaux sont à poursuivre pour les modélisations biomécaniques, comportementales et d autonomie de ces entités. Il existe donc un grand nombre de modélisations, certaines étant du domaine de la «réalisation physique du monde virtuel», correspondant au niveau I 2 sensori-motrices et d autres étant du domaine de la «modélisation comportementale du monde virtuel», correspondant au niveau I 2 cognitives du schéma de référence en RV (Figure 1.5). Le volume fera une présentation des techniques exploitables actuellement et des recherches futures en modélisation temps réel. Il abordera ensuite l évolution des outils logiciels, adaptés aux défis de modélisation de l environnement virtuel, de l acquisition des actions de l utilisateur et des restitutions sensorielles à ce dernier. Le plan du volume est composé de trois parties principales : Modèles pour les rendus sensori-moteurs ; Modèles pour les rendus comportementaux ; Outils et environnements de développement.
Introduction à la réalité virtuelle 17 1.4.1 LA MODÉLISATION DES ENVIRONNEMENTS VIRTUELS 1.4.1.1 Les modèles L exploitation d une scène virtuelle, représentative de l environnement dans lequel l expérimentation doit avoir lieu, est réalisée par le traitement de modèles que ce soit pour la forme des objets, leur aspect et leur mobilité [Foley e.a., 1982, Hégron, 1985, Foley e.a., 1995, Péroche e.a., 1998]. Concernant la géométrie des objets, le problème consiste essentiellement à décrire sous une forme mathématique la frontière entre l intérieur et l extérieur de l objet. Formellement, différentes techniques sont utilisables. Néanmoins, la contrainte du temps de calcul impose d exploiter des cartes graphiques 3D avec accélération matérielle pour la génération des images. En conséquence, il est actuellement d usage de considérer que les environnements 3D utilisés en réalité virtuelle sont modélisés par un ensemble de facettes polygonales planes 6, indépendamment de la manière dont les objets de cette scène ont été modélisés au départ. En effet, les outils de modélisation (modeleurs CAO ou multimédia) peuvent exploiter plusieurs types de modèles géométriques (NURBS 7, représentation volumique...) qui nécessiterons, pour être intégrés dans l application de réalité virtuelle, une conversion en un ensemble de facettes polygonales planes. Cette conversion n est pas sans conséquence puisqu elle est généralement effectuée avec perte d information. En effet, l ensemble des facettes polygonales planes ne représente, en général, qu une vue approchée de la surface initiale. Toute la difficulté de la conversion de modèle réside alors dans un judicieux compromis entre le nombre de facettes polygonales planes et la précision de la représentation. Une fois la forme représentée, il est nécessaire de considérer le comportement de l objet face à la lumière [Bouatouch e.a., 1996] et d associer aux surfaces un ensemble de propriétés photométriques lié au matériau composant l objet. Ici aussi, l exploitation de cartes graphiques 3D va orienter un certain nombre de choix. En effet, ces cartes disposent d algorithmes câblés d élimination des surfaces cachées (algorithme du tampon de profondeur) et de calcul d éclairement fondé sur quelques modèles simples traitant de la diffusion (loi de Lambert), de la spécularité (effet miroir) due aux sources et de la transparence (sans traitement de la réfraction). Il existe aussi des modèles d éclairement et des algorithmes plus sophistiqués [Whitted, 1980, Cook e.a., 1982](lancer de rayon [Roth, 1982, Kajiya, 1983], radiosité [Sillion e.a., 1998]) beaucoup plus coûteux et difficile à faire tenir aujourd hui sur une carte graphique. Enfin pour tenir compte de la mobilité d un objet, nous introduisons des modèles d animation chargés de gérer les degrés de liberté de l objet qui, selon sa nature rigide ou déformable, comprennent : les trois translations dans l espace 3D ; les trois rotations dans l espace 3D ; les déformations locales de la surface de l objet qui sont soit des déplacements des sommets des facettes polygonales planes soit des modifications plus profondes de la forme imposant une modification de la topologie de l objet (par exemple, un objet qui se casse en deux parties ou plus). 6 définition élémentaire : partie de plan inscrite dans un contour polygonal fermé. 7 Non Uniform Rational B-Spline.
18 Le traité de la réalité virtuelle Une scène virtuelle est généralement composée de plusieurs objets qui sont fréquemment organisés selon une représentation hiérarchique arborescente. En animation, cette hiérarchie peut être exploitée pour distinguer les mouvements relatifs de mouvements absolus. Dans la littérature scientifique, nous distinguons trois classes de modèles de mouvement [Arnaldi, 1988, Arnaldi, 1994] : Les modèles descriptifs : ils traduisent une représentation exclusivement fondée sur la description des effets du mouvement (modèles phénoménologiques). Même s il existe de nombreuses variantes, leur trait commun est de modéliser la mobilité des objets sous la forme de trajectoires spatio-temporelles [Reeves, 1981, Kochanek, 1984, Steketee e.a., 1985] (ensemble des lieux et des temps de passage des objets). Les modèles générateurs : ils s attachent à tenir compte des causes du mouvement (modèle causal) en représentant, sous la forme d équations, l ensemble des trajectoires possibles [Hégron e.a., 1992], [Hégron e.a., 1995] et [Dumont, 1990]. Un exemple classique de ce type de modèle est le fait d associer à un objet un comportement mécanique où le mouvement sera régit par ses équations qu il faudra résoudre pour chaque image ou pour chaque instant de l échantillonnage temporel utilisé. Les modèles comportementaux : ce type de modèle a pour vocation de donner de l autonomie à un objet [Donikian, 1994]. Fondamentalement, l objet doit avoir une perception de l environnement virtuel dans lequel il est plongé, il doit avoir la capacité de décider de son futur et enfin il doit pouvoir agir sur lui-même par ses organes moteurs. L exemple typique de ce type de modèle est le traitement d humains virtuels autonomes capable d agir et de réagir dans l environnement virtuel. Une discussion s impose quant aux capacités de ces modèles sur le plan des applications en réalité virtuelle : en effet, les modèles descriptifs sont tels que, dans une certaine mesure, les mouvements sont préenregistrés et qu il n est possible pratiquement que de contrôler l instant de déclenchement de la trajectoire. En particulier, les réactions aux interactions avec l utilisateur ne pourront suivre qu une des trajectoires préenregistrées. La variation et la crédibilité du résultat passent donc par l usage d un très grand nombre de trajectoires potentielles qu il est difficile de modéliser ; les modèles générateurs, quant à eux, sont très adaptables (au sens de l interaction) puisqu ils contiennent par essence l ensemble des réactions possibles. L action de l utilisateur est traduite sous la forme d un des points d entrée du modèle (paramétrage en force ou en position) et cette action est prise en compte au moment de la nouvelle résolution du système d équations. En contrepartie, les modèles générateurs sont beaucoup plus coûteux en temps de calcul car ils nécessitent généralement la résolution de systèmes d équations différentielles linéaires ou non-linéaires. Sur le plan de l usage, lorsqu une certaine réalité physique de l environnement virtuel est imposée par le type d application ou le type d interaction, ces modèles deviennent incontournables. Un exemple typique est celui d une interaction avec retour d effort. Dans ce cas, pour que l utilisateur ait la capacité de percevoir les efforts ou les inerties engendrées lors d une manipulation, l application doit être en mesure de déterminer ces forces, grâce au modèle générateur, pour les transmettre ensuite au dispositif haptique ;
Introduction à la réalité virtuelle 19 Enfin, les modèles comportementaux se placent sur un autre plan puisque leur caractéristique essentielle concerne leur capacité à produire de l autonomie dans l environnement virtuel. Cette autonomie est largement utilisée dans les applications faisant intervenir des entités virtuelles dotées d une certaine intelligence ou lorsque l on cherche à observer des phénomènes émergeants, liés à l usage d un ensemble de règles ou de lois locales connues sur un grand nombre d entités (modélisation et simulation multi-agents). Dans la partie action du cycle perception - décision - action, le modèle comportemental s appuie fréquemment sur un modèle descriptif ou un modèle générateur. La modélisation des environnements virtuels est présentée en détail dans les premiers chapitres de ce volume. 1.4.1.2 Autonomisation des modèles L autonomisation d un modèle consiste à le doter de moyens de perception et d action au sein de son environnement, ainsi que d un module de décision lui permettant d adapter ses réactions aux stimuli tant externes qu internes. Trois éléments de réflexion nous guident dans l autonomisation des modèles : l autonomie par essence, par nécessité et par ignorance. L autonomie par essence est celle qui caractérise les organismes vivants, de la cellule à l homme. Les avatars ne sont pas les seuls modèles à percevoir et à agir dans leurs environnements numériques : tout modèle censé représenter un être vivant doit impérativement être doté d une telle interface logicielle sensori-motrice. La notion d animat, par exemple, concerne les animaux artificiels dont les lois de fonctionnement s inspirent de celles des animaux [Wilson, 1985]. Comme un avatar, un animat est situé dans un environnement; il possède des capteurs pour acquérir des informations sur son environnement et des effecteurs pour agir au sein de cet environnement. A la différence d un avatar dont le contrôle est assuré par un utilisateur humain, l animat doit assurer lui-même ce contrôle pour coordonner ses perceptions et ses actions [Meyer e.a., 1991]. Le contrôle peut être inné (préprogrammé) [Beer, 1990], mais dans l approche animat, il sera le plus souvent acquis afin de simuler la genèse de comportements adaptés pour survivre dans des environnements changeants. Ainsi, l étude de l apprentissage (épigenèse) [Barto e.a., 1981], du développement (ontogenèse) [Kodjabachian e.a., 1998] et de l évolution (phylogenèse) [D. Cliff e.a., 1993] de l architecture de contrôle constitue l essentiel des recherches dans ce domaine très actif [Meyer e.a., 1994, Guillot e.a., 2000] 8. L animation de créatures virtuelles obtenues par ces différentes approches constitue un exemple très démonstratif de ces comportements adaptatifs [Sims, 1994], et la modélisation d acteurs virtuels relèvent de la même démarche [Thalmann, 1996]. Ainsi, l autonomisation du modèle associé à un organisme permet de rendre compte plus fidèlement de l autonomie constatée chez cet organisme. L autonomie par nécessité concerne la prise en compte instantanée des changements dans l environnement, par les organismes comme par les mécanismes. La modélisation physique des mécanismes passe le plus souvent par la résolution de systèmes 8 From Animals to Animats (Simulation of Adaptive Behavior) : conférences bisannuelles depuis 1990 (www.adaptive-behavior.org/conf).
20 Le traité de la réalité virtuelle d équations différentielles. Cette résolution nécessite la connaissance des conditions aux limites qui contraignent le mouvement. Or, dans la réalité, ces conditions peuvent changer sans arrêt, que les causes en soient connues ou non (interactions, perturbations, modifications de l environnement). Le modèle doit donc être capable de percevoir ces changements pour adapter son comportement en cours d exécution. Ceci est d autant plus vrai quand l homme est présent dans le système car, par l intermédiaire de son avatar, il peut provoquer des modifications tout à fait imprévisibles initialement. L exemple de l écoulement du sable dans un sablier est à ce titre très instructif. La simulation physique des milieux granulaires repose le plus souvent sur des interactions micromécaniques entre sphères plus ou moins dures. De telles simulations prennent plusieurs heures de calcul pour visualiser des écoulements de l ordre de la seconde et sont donc inadaptées aux contraintes de la réalité virtuelle [Herrmann e.a., 1998]. Une modélisation à plus gros grains (niveau mésoscopique) à base de masses ponctuelles liées entre elles par des interactions appropriées conduit à des visualisations satisfaisantes mais non interactives [Luciani, 2000]. Notre approche considère des gros grains de sable autonomes qui, individuellement, détectent les collisions (chocs élastiques) et sont sensibles à la gravité (chute libre). Elle nous permet de simuler l écoulement du sable dans le sablier, mais également de s adapter en temps réel au retournement du sablier ou à la création d un trou dans le sablier [Harrouet, 2000]. Ainsi, l autonomisation d un modèle quelconque lui permet de réagir à des situations imprévues qui apparaissent en cours d exécution, et qui sont le fait de modifications dans l environnement dues à l activité des autres modèles. L autonomie par ignorance révèle notre incapacité actuelle à rendre compte du comportement de systèmes complexes par les méthodes réductionnistes de la démarche analytique. Un système complexe est un système ouvert composé d un ensemble hétérogène d entités atomiques ou composites, dont le comportement d ensemble est le résultat du comportement individuel de ces entités et de leurs interactions variées dans un environnement, lui-même actif. Selon les écoles, le comportement d ensemble est considéré soit comme organisé en fonction d un but, et on parle de comportement téléologique [Le Moigne, 1997], soit comme le produit d une auto-organisation du système, et on parle alors d émergence [Morin, 1977]. L inexistence de modèles de comportement global pour les systèmes complexes conduit à répartir le contrôle au niveau des composants des systèmes et ainsi à autonomiser les modèles de ces composants. L évolution simultanée de ces composants permet alors de mieux appréhender le comportement d ensemble du système global. Ainsi, un ensemble de modèles autonomes en interaction au sein d un même espace contribue à l étude des systèmes complexes ainsi qu à leur expérimentation. L autonomie par conviction : l autonomisation des modèles, qu elle soit par essence, par nécessité ou par ignorance, contribue à peupler les environnements virtuels d une vie artificielle qui renforce l impression de réalité. L utilisateur d un système de réalité virtuelle est à la fois spectateur et acteur, mais il peut être aussi créateur de l univers de modèles numériques avec lequel il interagit. Mieux, il y participe pleinement au sens où il est lui-même représenté au sein de l univers par un avatar, modèle numérique qui dispose de capteurs et d actionneurs virtuels pour percevoir et agir dans cet univers. La véritable autonomie de l utilisateur tient alors dans sa capacité à coordonner ses perceptions et ses actions, soit au hasard, pour simplement déambuler dans cet environnement virtuel, soit en suivant ses propres buts. L utilisateur est ainsi placé au même niveau conceptuel que les modèles numériques qui composent ce monde virtuel.
Introduction à la réalité virtuelle 21 Différents types de modèles particules, mécanismes, organismes coexistent au sein des univers virtuels. Il est essentiel de donner aux modèles d organismes les moyens de percevoir, d agir et de décider, afin de reproduire au mieux leur capacité à décider par eux-mêmes. Cette démarche est également nécessaire pour les mécanismes, qui doivent être capables de réagir à des modifications imprévues de leur environnement. Par ailleurs, notre ignorance dans la compréhension des systèmes, lorsqu ils deviennent trop complexes, nous conduit à décentraliser le contrôle du système au niveau de ses constituants. Les modèles, quels qu ils soient, doivent donc disposer de moyens d investigation équivalents à ceux de l utilisateur et de moyens de décision adaptés à leurs fonctions. Une déficience sensorielle (myopie, surdité, anesthésie) provoque en général une perte d autonomie du sujet. Il en est de même pour un handicap moteur (entorse, déchirure, élongation) et pour une déficience mentale (amnésie, distraction, phobie). Une déficience dans l une des trois médiations du réel (sens, action, cognition) conduit donc à une perte d autonomie. Ainsi, a contrario, doter les modèles de moyens de perception, d action et de décision, c est leur donner une autonomie qui les place au même niveau opérationnel que l utilisateur. Nous érigeons donc en principe l autonomisation des modèles numériques qui composent un univers virtuel. Un environnement virtuel en réalité virtuelle peut être un univers de modèles autonomes en interaction, au sein duquel tout se passe comme si les modèles étaient réels parce qu ils proposent simultanément, aux utilisateurs et aux autres modèles, la triple médiation des sens, de l action et de la cognition. Accepter cette autonomie par conviction, c est accepter le partage du contrôle de l évolution des univers virtuels entre les utilisateurs humains et les modèles numériques qui peuplent ces univers. L autonomie des entités virtuelles est présentée en détail dans le chapitre correspondant du volume deux du traité. Les principales qualités d un modèle représentation artificielle d un objet ou d un phénomène reposent sur ses capacités à décrire, suggérer, expliquer, prédire et simuler. La simulation du modèle, ou l expérimentation sur le modèle, consiste à tester le comportement de cette représentation sous l effet d actions que l on peut exercer sur le modèle. Les résultats d une simulation deviennent ensuite des hypothèses que l on cherche à vérifier en concevant des expériences sur un prototype singulier du système réel. Ces expériences, ainsi rationalisées, constituent une véritable expérimentation in vivo. Une typologie des simulations, dans le champ de la réalité virtuelle ou non, est présentée en annexe de ce chapitre. 1.4.2 MODÉLISATION ET SIMULATION 1.4.2.1 Typologie des simulations On distingue classiquement quatre principaux types de modèles : les modèles perceptifs, formels, analogiques, et numériques. L expérimentation de ces modèles conduit à cinq grandes familles de simulation. Intuitions in petto La simulation d un modèle perceptif correspond à des intuitions in petto issues de notre imaginaire et de la perception que l on a du système
22 Le traité de la réalité virtuelle étudié. Elle permet ainsi d éprouver des impressions sur le système réel. Inspirations, associations d idées et heuristiques, non codifiées et non raisonnées, provoquent la formation d images mentales dotées d un pouvoir évocateur. La démarche scientifique cherchera à rationaliser ces premières impressions tandis que la création artistique en tirera des œuvres numériques ou analogiques selon le support utilisé. Mais c est souvent le caractère suggestif du modèle perceptif qui déclenchent ces instants créatifs qui conduisent à l invention ou à la découverte [Vidal, 1984], comme en témoigne Alfred Wegener, le père de la dérive des continents et de l expansion des fonds océaniques desquelles émergera la théorie de la tectonique des plaques à la fin des années 1960. La première idée des translations continentales me vint à l esprit dès 1910. En considérant la carte du Globe, je fus subitement frappé de la concordance des côtes de l Atlantique, mais je ne m y arrêtai point tout d abord, parce que j estimai de pareilles translations invraisemblables. Alfred Wegener, La genèse des continents et des océans, 1937 Raisonnements in abstracto La simulation d un modèle formel repose sur un raisonnement in abstracto mené dans le cadre d une théorie. Le raisonnement fournit des prédictions qui peuvent être testées sur le système réel. La découverte en 1846 de la planète Neptune par Galle, à partir des prévisions théoriques de Adams et Le Verrier, est une illustration de cette démarche dans le cadre de la théorie des perturbations du problème à 2 corps en mécanique céleste. De même, en physique des particules, la découverte en 1983 des bosons intermédiairesw +, W et Z 0 avait été prévue quelques années auparavant par la théorie des interactions électrofaibles. Ainsi, de l infiniment grand à l infiniment petit, le caractère prédictif des modèles formels s est avéré très fructueux dans de nombreux domaines scientifiques. Expérimentations in vitro La simulation d un modèle analogique passe par une expérimentation in vitro sur un échantillon ou sur une maquette construite par analogie avec le système réel. Les similitudes entre la maquette et le système améliorent alors la compréhension du système étudié. Les essais en soufflerie sur des maquettes d avion permettent aux aérodynamiciens de mieux caractériser l écoulement d air autour d obstacles par l étude de coefficients de similitude introduits à la fin du 19ème siècle par Reynolds et Mach. De même, en physiologie, l analogie cœur-pompe a permis à Harvey (1628) de montrer que la circulation du sang relevait des lois de l hydraulique. Ainsi, de tout temps, le caractère explicatif des modèles analogiques a été utilisé, avec plus ou moins de dérive anthropocentrique, pour ramener l inconnu au connu. Calculs in silico La simulation d un modèle numérique est l exécution d un programme censé représenter le système à modéliser. Les calculs in silico donnent des résultats qui sont confrontés aux mesures effectuées sur le système réel. La résolution numérique de systèmes d équations mathématiques correspond à l utilisation la plus courante de la modélisation numérique. En effet, la détermination analytique de solutions se heurte souvent à des difficultés qui tiennent aussi bien aux caractéristiques des équations à résoudre (non-linéarité, couplages) qu à la complexité des conditions aux limites et à la nécessité de prendre en compte des échelles spatio-temporelles très différentes. L étude de la cinétique de réactions chimiques, le calcul des déformations d un solide sous l effet de contraintes thermo-mécaniques, ou la caractérisation du rayonnement électromagnétique d une antenne, sont des exemples classiques d implantation 9 sur ordinateur de systèmes d équations différentielles. Ainsi le modèle numérique obtenu par discrétisation du modèle théorique est devenu aujourd hui un outil indispensable. 9 Par abus de langage, un autre mot venant du terme anglais implementation est employé : implémentation.
Introduction à la réalité virtuelle 23 Expérimentations in virtuo Plus récemment, la possibilité d interagir avec un programme en cours d exécution ou avec un environnement virtuel interactif a ouvert la voie à une véritable expérimentation in virtuo des modèles numériques. Il est désormais possible de perturber un modèle en cours d exécution, de modifier dynamiquement les conditions aux limites, de supprimer ou d ajouter des éléments en cours de simulation. Ce qui confère aux environnements virtuels interactifs un statut de maquette virtuelle, infiniment plus malléable que la maquette réelle de la modélisation analogique. Les simulateurs de vol ou les jeux vidéo sont les précurseurs des systèmes de réalité virtuelle qui deviennent nécessaires lorsqu il est difficile, voire impossible, de recourir à l expérimentation directe, quelles qu en soient les raisons : milieux hostiles, difficultés d accès, contraintes spatio-temporelles, contraintes budgétaires, éthiques... 1.4.2.2 Modélisation, simulation, compréhension En fait, ces différents modes de simulation sont complémentaires et peuvent, tous ou en partie, être mis en œuvre pour appréhender et comprendre un même phénomène (figure 1.7). En effet, que l on soit littéraire ou scientifique, artiste ou ingénieur, l étude d un phénomène réel passe d abord par nos perceptions. Ces perceptions, confrontées à notre imaginaire personnel, nous inspirent des intuitions in petto qui se traduisent en impressions. Ce n est que dans un deuxième temps, que l approche scientifique cherche à formaliser ces premières impressions pour en donner une représentation la plus dégagée des illusions individuelles. Les raisonnements in abstracto élaborés dans le cadre d une théorie adaptée, et qui reposent le plus souvent sur une démarche logico-déductive, conduisent alors à des prédictions sur le phénomène étudié. Des expérimentations in vivo sur le système réel peuvent ainsi être menées pour confronter ces prédictions aux résultats expérimentaux. Mais dans certaines situations réelles, l approche formelle seule, essentiellement réductionniste, ne peut rendre compte de la complexité du phénomène étudié. On peut alors recourir à des analogies pour mener des expérimentations sur des maquettes réelles. Ces maquettes peuvent être obtenues par des analogies d échelles (type modèle réduit) ou par des analogies formelles (type thermique électrique). Les résultats de ces expérimentations in vitro sont ensuite adaptés au phénomène réel par similitude (facteurs d échelle ou de conversion). Aujourd hui, le recours aux méthodes numériques et aux programmes informatiques ouvre une autre voie pour simuler un modèle formel pour lequel on ne dispose pas de solution analytique. On distingue alors le calcul in silico de l expérimentation in virtuo par l absence ou la présence de l homme dans la boucle de simulation. L expérimentation in virtuo permet à l utilisateur de manipuler une véritable maquette virtuelle et de re-sentir ou non ses premières impressions, là où les calculs in silico ne fournissent que des résultats numériques. Dans certains cas, on cherche à rendre compte par la simulation, non d un phénomène réel, mais d une idée. Pour matérialiser son idée, l artiste passera directement du modèle perceptif de son imaginaire à une œuvre analogique ou numérique : c est l acte de création artistique, analogique ou numérique selon le support utilisé. Pour sa part, l ingénieur passera du modèle formel de son cadre théorique à une maquette réelle ou virtuelle : c est l acte de conception technologique qui se traduit par une concrétisation
24 Le traité de la réalité virtuelle analogique ou numérique. Cette maquette, réelle ou virtuelle, devient alors le prototype singulier d un nouveau phénomène réel qui peut à son tour être étudié par de nouvelles expérimentations; le scientifique entre alors dans un processus itératif de modélisation/simulation qui lui permet de préciser son idée et ainsi d affiner et d améliorer les différents modèles associés. implémentation théories Modèles formels raisonnements in abstracto formalisation prédictions matérialisation programmes Modèles numériques expérimentations in virtuo numérisation comportements prototypes Phénomènes réels expérimentations in vivo analogies similitudes maquettes Modèles analogiques expérimentations in vitro création numérique impressions perception imaginaires Modèles perceptifs intuitions in petto création analogique domaine Modèle simulation modélisation compréhension Figure 1.7 : Modélisation, simulation et compréhension des phénomènes La notion de modèle en tant que représentation du réel repose sur deux métaphores, l une artistique et l autre juridique. La métaphore juridique de délégation (l élu représente le peuple, le nonce apostolique représente le pape et l ambassadeur le chef d état) suggère la notion de remplacement : le modèle tient lieu de réalité. La métaphore artistique de réalisation (la pièce de théâtre est représentée en public, l inspiration artistique est représentée par une œuvre) suggère la notion de présence : le modèle est une réalité. Ainsi, tout en complétant nos moyens d investigation désormais classiques que sont les expérimentations in vivo et in vitro, ou encore les calculs in silico, l expérimentation in virtuo d un modèle numérique lui assure une véritable présence et ouvre de nouveaux champs d exploration, d investigation et de compréhension du réel. 1.4.3 RÉALITÉ VIRTUELLE ET COMPLEXITÉ Les systèmes complexes sont omniprésents, que ce soit en biologie la source d inspiration la plus importante, en physique, en informatique ou en économie. De nouvelles méthodes d analyse sont indispensables dès que l on souhaite les étudier en détail, sans faire appel à des simplifications qui les dénaturent. [...] Pour étudier les systèmes complexes, on pourrait tenter d utiliser les méthodes analytiques classiques : on écrirait un ensemble d équations censé décrire le comportement global du système et on
Introduction à la réalité virtuelle 25 résoudrait ces équations, mais, généralement, on ne sait pas les écrire. Zwirn H., La complexité, science du XXIème siècle?, in Pour la Science, décembre 2003 Les systèmes que l on cherche à modéliser sont de plus en plus complexes. Cette complexité provient essentiellement de la diversité des composants, de la diversité des structures et de la diversité des interactions mises en jeu. Un système est alors a priori un milieu ouvert (apparition/disparition dynamique de composants), hétérogène (morphologies et comportements variés) et formé d entités composites, mobiles et distribuées dans l espace, en nombre variable dans le temps. Ces composants, parmi lesquels l homme avec son libre arbitre joue souvent un rôle déterminant, peuvent être structurés en différents niveaux connus initialement ou émergeant au cours de leur évolution du fait des multiples interactions entre ces composants. Les interactions elles-mêmes peuvent être de natures différentes et opérer à différentes échelles spatiales et temporelles. Mais comme le suggère la citation placée en exergue de cette section, il n existe pas aujourd hui de théorie capable de formaliser cette complexité et de fait, il n existe pas de méthodes de preuves formelles a priori comme il en existe dans les modèles hautement formalisés. En l absence de preuves formelles, nous devons recourir à l expérimentation du système en cours d évolution afin de pouvoir effectuer des validations expérimentales a posteriori. 1.4.3.1 Le virtuoscope La réalité virtuelle fournit aujourd hui un cadre conceptuel, méthodologique et expérimental bien adapté pour imaginer, modéliser et expérimenter cette complexité. Selon les définitions fonctionnelle et technique de la réalité virtuelle donnée en section 1.1.2.3 page 7, la simulation en réalité virtuelle autorise donc une véritable interaction avec le système modélisé. A l instar du biologiste qui réalise des expérimentations in vitro, cette simulation permet d observer le phénomène comme si l on disposait d un microscope virtuel déplaçable et orientable à volonté, et capable de mises au point variées. L utilisateur spectateur-acteur-créateur peut ainsi se focaliser sur l observation d un type de comportement particulier, observer l activité d un sous-système ou bien l activité globale du système. A tout moment, l utilisateur peut interrompre le phénomène et faire un point précis sur les corps en présence et sur les interactions en cours ; puis il peut relancer la simulation là où il l avait arrêtée. A tout moment, à l aide d interfaces comportementales sensori-motrices, l utilisateur peut perturber le système en modifiant une propriété d un élément (état, comportement), en retirant des éléments ou en ajoutant de nouveaux éléments ; il peut ainsi tester un comportement particulier, et plus généralement une idée, et immédiatement en observer les conséquences sur le système en fonctionnement. La réalité virtuelle place l utilisateur au cœur d un véritable laboratoire virtuel qui le rapproche ainsi des méthodes des sciences expérimentales tout en lui donnant accès aux méthodes numériques. Dépassant la simple observation de l activité du modèle numérique en cours d exécution sur un ordinateur, l utilisateur peut tester la réactivité et l adaptabilité du modèle en fonctionnement, tirant ainsi profit du caractère comportemental des modèles numériques. Nous appelons ce nouveau type d expérimentation : l expérimentation in virtuo [Tisseau, 2001]. Une expérimentation in virtuo est ainsi une expérimentation conduite dans un univers virtuel de modèles numériques en interaction et auquel l homme participe. La réalité virtuelle implique pleinement l utilisateur dans la simulation, rejoignant ainsi l approche de la conception participative (participory design) qui préfère
26 Le traité de la réalité virtuelle voir dans les utilisateurs des acteurs humains plutôt que des facteurs humains. Une telle simulation participative en réalité virtuelle met en œuvre des modèles de types différents (multi-modèles) issus de domaines d expertise différents (multi-disciplines). Elle est souvent complexe car son comportement global dépend autant du comportement des modèles eux-mêmes que des interactions entre modèles. Enfin, elle doit inclure le libre arbitre de l utilisateur humain qui exploite les modèles en ligne. L expérimentation in virtuo implique ainsi un vécu que ne suggère pas la simple analyse de résultats numériques. Entre les preuves formelles a priori et les validations a posteriori, il y a aujourd hui la place pour une réalité virtuelle vécue par l utilisateur qui peut ainsi franchir le cap des idées reçues pour accéder à celui des idées vécues. Nous proposons de placer cette expérimentation in virtuo au cœur du laboratoire du XXIème siècle afin de rendre intelligible la complexité inhérente aux systèmes, qu ils soient naturels ou artificiels. Microscope, téléscope : ces mots évoquent les grandes percées scientifiques vers l infiniment petit et vers l infiniment grand. [...] Aujourd hui, nous sommes confrontés à un autre infini : l infiniment complexe. Mais cette fois plus d instrument. Rien qu un cerveau nu, une intelligence et une logique désarmés devant l immense complexité de la vie et de la société. [...] Il nous faut donc un nouvel outil. [...] Cet outil, je l appelle le macroscope (macro, grand ; et skopein, observer). Le macroscope n est pas un outil comme les autres. C est un instrument symbolique, fait d un ensemble de méthodes et de techniques empruntées à des disciplines très différentes. Evidemment, il est inutile de le chercher dans les laboratoires ou les centres de recherche. Et pourtant nombreux sont ceux qui s en servent aujourd hui dans les domaines les plus variés. Car le macroscope peut être considéré comme le symbole d une nouvelle manière de voir, de comprendre et d agir. De Rosnay J., Le macroscope : vers une vision globale [de Rosnay, 1975] Les systèmes modélisés sont de plus en plus complexes, mais aujourd hui encore, il n existe pas de formalisme capable de rendre compte de cette complexité. Seule la réalité virtuelle permet de vivre cette complexité. Il nous faudra donc approfondir les relations entre la réalité virtuelle et les théories de la complexité pour faire de la réalité virtuelle un outil d investigation de la complexité, tel le macroscope que Joël de Rosnay imaginait dans les années 1970. Au terme de macroscope, nous préférons celui de virtuoscope qui rappelle que ces systèmes sont étudiées avant tout à travers les modèles que nous nous en faisons et que nous expérimentons au sein de nos laboratoires virtuels. Ce projet de virtuoscope doit permettre à terme de mettre à la disposition des scientifiques, toutes disciplines confondues, des méthodes et des outils leur permettant l étude de systèmes complexes au sein de laboratoires virtuels mettant en œuvre l expérimentation in virtuo telle que la propose la réalité virtuelle. 1.4.3.2 Les enjeux du virtuoscope Mieux vaut utiliser la possibilité neuve d un certain recul par rapport à l impérialisme intellectuel de la science, non pour nier son importance ou son intérêt et tenter son impossible occultation, mais, au contraire, pour essayer d enfin la voir, de loin, et lui assigner une place propre dans le paysage culturel. Il serait dérisoire de nier l efficacité et la portée du savoir scientifique, il serait absurde de refuser l utilisation de ses instruments de pensée. Encore faut-il décider qu en faire. Lévy-Leblond J.M., Aux contraires [Levy-Leblond, 1996] Décrire, expliquer, prédire et simuler les comportements de systèmes complexes, naturels ou artificiels, constituent pour les scientifiques le défi majeur du XXIème siècle. La réalité virtuelle contribuera à relever ce défi dont les enjeux associés sont tout autant scientifiques, méthodologiques et technologiques que sociétaux.
Introduction à la réalité virtuelle 27 Enjeux scientifiques La science moderne poursuit le désir de connaissance qui existait déjà au néolithique. C est évidemment plus approfondi, plus étendu, parce que nous avons d autres concepts à notre disposition, mais le désir de connaître notre environnement est le même. Auparavent, on pensait qu avec la loi de Newton et deux ou trois autres lois, on pouvait la comprendre. La nature était perçue comme fondamentalement simple, alors qu aujourd hui, on voit qu elle est fondamentalement complexe. [...] Je me rappelle avoir lu, il y a des années, un livre du physicien américain Richard Feynmann, La nature des lois physiques. Feynmann pensait que le monde était comparable à un énorme jeu d échecs où la complexité n était qu apparente et où chaque coup était simple ; la règle du jeu connue, on pourrait déchiffrer le monde. Or, quoi de plus complexe qu un proton? Un proton est formé de quarks, les quarks interagissent par des gluons et toutes sortes de choses. La nature a cessé d être simple. Prigogine I., Entretien avec Ilya Prigogine cité dans [Benkirane, 2002] La nature a cessé d être simple et les systèmes complexes qui la constituent systèmes ouverts composés de nombreuses entités en interaction sont des systèmes dynamiques en perpétuelle évolution. Leur compréhension passe par leur modélisation. La modélisation est l action d élaboration et de construction intentionnelle, par composition de symboles, de modèles susceptibles de rendre intelligible un phénomène perçu complexe, et d amplifier le raisonnement de l acteur projetant une intervention délibérée au sein du phénomène, raisonnement visant notamment à anticiper les conséquences de ces projets d actions possibles [Le Moigne, 1990]. La modélisation des systèmes complexes posent alors de nombreuses questions théoriques auxquelles il faudra répondre. Quelle démarche modélisatrice adopter? Comment expliciter dans le modèle l intention modélisatrice? Comment caractériser un système complexe, son organisation multi-niveaux? Comment aborder la notion d émergence de comportements d ensemble à partir des comportements individuels? Comment intégrer des modèles ayant des dynamiques spatio-temporelles différentes? Comment prendre en compte le libre arbitre de l homme participant à ces systèmes? Comment confronter la singularité d un système complexe aux exigences de reproductibilité de la démarche scientifique? Comment valider les modèles? Quels liens entre le réel et le virtuel?... En réalité virtuelle, l homme est dans la boucle en interaction multisensorielle avec des systèmes multi-modèles et multi-disciplines. Se posent alors 3 questions principales : 1. quelle est la place et le rôle de l homme dans ces environnements virtuels? (voir le volume 1 du traité de la réalité virtuelle) 2. quelle est la place et le rôle des entités virtuelles qui évoluent au sein de ces environnements? (voir le présent volume du traité de la réalité virtuelle) 3. quels dispositifs mettrent en œuvre pour assurer des interactions quasinaturelles entre l homme immergé dans l environnement et les entités qui peuplent cet environnement? (voir le volume 2 du traité de la réalité virtuelle) Les réponses à ces questions, dont la liste précédente n est pas exhaustive, nécessite de définir une nouvelle démarche méthodologique adaptée à l étude des systèmes complexes. Enjeux méthodologiques Plus une science est complexe, plus il importe, en effet, d en établir une bonne critique expérimentale, afin d obtenir des faits comparables et exempts de causes d erreur. [...] Pour être digne de ce nom, l expérimentateur doit être à la fois théoricien et praticien. S il doit posséder d une manière complète l art d instituer les faits d expérience, qui sont les matériaux de la science, il doit aussi se rendre compte clairement des principes scientifiques qui dirigent notre raisonnement au milieu
28 Le traité de la réalité virtuelle de l étude expérimentale si variée des phénomènes de la nature. Il serait impossible de séparer ces deux choses : la tête et la main. Une main habile sans la tête qui la dirige est un instrument aveugle ; la tête sans la main qui réalise reste impuissante. Bernard C., Introduction à l étude de la médecine expérimentale [Bernard, 1865] Afin d en établir une bonne critique expérimentale, l étude et la validation des modèles de systèmes complexes passent par leur simulation. Dans le cadre de la réalité virtuelle, la simulation devient participative et propose l expérimentation in virtuo des modèles numériques en cours d exécution. L expérimentation in virtuo doit être conduite à partir d une modélisation multi-modèles nécessitant une cohabitation/intégration de modèles différents, tout en autorisant une analyse multi-niveaux (local/global) du système expérimenté. Elle doit permettre la dialogique cognitivisme/constructivisme entre les approches formelles et les approches expérimentales afin de valider les modèles expérimentés. La réalité virtuelle, qui permet aux utilisateurs de vivre des activités sensorimotrices dans des mondes artificiels, vient instrumenter l approche énactive de Varela selon laquelle la cognition n est pas uniquement représentation mais également action incarnée : l intelligibilité d un système relève tout autant d une praxis en situation que d un pur traitement d informations [Varela e.a., 1993]. Enjeux technologiques Chaque programme d ordinateur est un modèle, forgé par l esprit, d un processus réel ou imaginaire. Ces processus, qui naissent de l expérience et de la pensée de l homme, sont innombrables et complexes dans leurs détails. A tout moment, ils ne peuvent être compris que partiellement. Ils ne sont que rarement modélisés d une façon satisfaisante dans nos programmes informatiques. Bien que nos programmes soient des ensembles de symboles ciselés avec soin, des mosaïques de fonctions entrecroisées, ils ne cessent d évoluer. Nous les modifions au fur et à mesure que notre perception du modèle s approfondit, s étend et se généralise, jusqu à atteindre un équilibre métastable aux frontières d une autre modélisation possible du problème. L ivresse joyeuse qui accompagne la programmation des ordinateurs provient des allers-retours continuels, entre l esprit humain et l ordinateur, des mécanismes exprimés par des programmes et de l explosion de visions nouvelles qu ils apportent. Si l art traduit nos rêves, l ordinateur les réalise sous la forme de programmes! Abelson H., Sussman G.J., Sussman J., Structure and interpretation of computer programs [Abelson e.a., 1985] Si l art traduit nos rêves, l ordinateur les réalise sous la forme de programmes et, afin de les expérimenter in virtuo, il faut les instrumenter. Le virtuoscope, qui vient instrumenter les modèles numériques de la réalité virtuelle, doit bien entendu disposer d une infrastructure informatique importante, véritable paillasse virtuelle du XXIème siècle. L élaboration de cette paillasse virtuelle doit assurer en temps réel, de manière fiable et quasi-naturelle, une interopérabilité des systèmes pour permettre la réalisation d expériences sensori-motrices crédibles sur des systèmes multi-modèles et multi-disciplines. Ainsi, nous pourrons disposer de nouveaux outils autorisant une activité collective en environnements virtuels, à moindre risque et à moindre coût. Les utilisateurs du virtuoscope pourront alors s extraire de leurs propres espaces spatiotemporels pour interagir et participer au sein d un même univers virtuel à une vie artificielle simulant le réel ou l imaginaire du modélisateur. Enjeux sociétaux Les mondes virtuels doivent être réalisés, c est-à-dire qu on doit s efforcer de mettre au jour ce qui est virtuellement présent en eux, à savoir les modèles intelligibles qui les structurent et les idées qui les animent. La vertu fondamentale des mondes virtuels est d avoir été conçus en vue d une fin. C est cette fin qu il faut réaliser, actualiser, que l application soit industrielle, spatiale, médicale ou artistique, ludique ou philosophique. Les images du virtuel doivent nous aider à révéler la réalité du virtuel, qui est d ordre intelligible, et d une intelligibilité proportionnée à la fin poursuivie, théorique ou pratique, utilitaire ou contemplative. Quéau Ph., Le virtuel, vertus et vertiges [Quéau, 1993] La vertu fondamentale des mondes virtuels est d avoir été conçus en vue d une fin. En effet, la compréhension des systèmes complexes et leur expéri-
Introduction à la réalité virtuelle 29 mentation instrumentée au sein du virtuoscope doivent permettre de maîtriser la complexité dans toutes ses dimensions sociétales. au niveau technologique (aide à la conception, maquette virtuelle, simulation...), l expérimentation in virtuo des maquettes virtuelles intervient à chaque étape de la vie d un nouveau produit du rasoir jetable à la centrale nucléaire : de l idée d un produit à son démantèlement éventuel en passant par sa conception, son prototypage, et sa maintenance ; au niveau culturel (musée virtuel, théâtre virtuel, fiction interactive, arts participatifs...), l expérimentation in virtuo place le spectateur au cœur de l œuvre, lui permettant de devenir acteur et créateur (cré-acteur) ; au niveau éducatif (environnements virtuels de formation, préparation de missions en milieux hostiles...), l expérimentation in virtuo redonne toute leur place aux apprentissages des savoir-faire et des savoir-être ; au niveau de la santé (actes chirurgicaux, thérapies, bio feedback...) l expérimentation in virtuo autorise une participation active des patients, en pleine coopération avec les soignants ; au niveau politique (aide à la décision pour l urbanisme, pour la sécurité civile, pour la protection de l environnement...), l expérimentation in virtuo permet aux décideurs de mieux appréhender les différents scénarii envisagés, et de tester différentes possibilités en agissant dans l environnement virtuel. En réalité virtuelle, la décision devient ainsi simulation de l action comme le propose le neurophysiologiste Alain Berthoz. La décision n est donc pas seulement raison, elle est aussi action. Ce n est jamais un processus purement intellectuel, un jeu logique que l on peut mettre en équation. Une décision implique une réflexion, bien sûr, mais elle porte déjà en elle, tout en intégrant les éléments du passé, l acte sur lequel elle débouche. Berthoz A., La décision [Berthoz, 2003] Ces quelques exemples, choisis parmi d autres, et dont certains seront largement développés dans le volume 4 du présent traité, illustrent clairement l importance des enjeux liés à la compréhension, à l étude, à l expérimentation, à l instrumentation et à la maîtrise des systèmes complexes. L expérimentation in virtuo en réalité virtuelle apparaît alors comme un des moyens de mieux appréhender cette complexité. 1.5 RÉFÉRENCES BIBLIOGRAPHIQUES [Abelson e.a., 1985] [Arnaldi, 1988] [Arnaldi, 1994] [Arnaldi e.a., 2003] [Barto e.a., 1981] [Beer, 1990] H. Abelson, G. Sumangerssman, and J. Sussman. Structure and interpretation of computer programs. traduction française : InterEditions (1985). B. Arnaldi (1988). Conception du noyau d un système d animation de scènes tridimensionnelles intégrant les lois de la mécani que. Thèse de doctorat, Université de Rennes I. B. Arnaldi (1994). Animation de systèmes physiques. mémoire d habilitation à diriger les recherches, université de Rennes I. B. Arnaldi, P. Fuchs, and J. Tisseau. Chapitre 1 du volume 1 du traité de la réalité virtuelle. Les Presses de l Ecole des Mines de Paris (2003). A. Barto and R. Sutton. Landmark learning : an illustration of associative search. Biological Cybernetics, 42 :1 8 (1981). R. Beer. Intelligence as adaptive behavior : an experiment in computational neuroethology. Academic Press, San Diego (1990).
30 Le traité de la réalité virtuelle [Benkirane, 2002] R. Benkirane. La complexité, vertiges et promesses. Le Pommier (2002). [Bernard, 1865] C. Bernard. Introduction à l étude de la médecine expérimentale. Garnier-Flammarion, 1966 (1865). [Berthoz, 2003] A. Berthoz. La décision. Odile Jacob (2003). [Bouatouch e.a., 1996] K. Bouatouch, P. Guitton, B. Péroche, and F. Sillion. Simulation de la lumière en synthèse d images : aspects algorithmiques. TSI, 14(10) (1996). [Cook e.a., 1982] R. Cook and K. Torrance. A reflectance model for computer graphics. ACM Transactions on Graphics, 1(1) :7 24 (1982). [CRTRV, 2004] CRTRV (2004). Le comité de rédaction du traité de la réalité virtuelle. dossier de présentation du TRV3. [D. Cliff e.a., 1993] I. H. D. Cliff and P. Husbands. Explorations in evolutionary robotics. Adaptive Behavior, 2(1) :73 110 (1993). [de Rosnay, 1975] J. de Rosnay. La macroscope : vers une vision globale. Le Seuil (1975). [Donikian, 1994] S. Donikian. Les modèles comportementaux pour la génération du mouvement d objets dans une scène. Revue Internationale de CFAO et d Infographie, numéro spécial AFIG-GROPLAN, 9(6) (1994). [Dumont, 1990] G. Dumont (1990). Animation de scènes tridimensionnelles : la mécanique des solides comme modèle de synthèse du mouvement. Thèse de doctorat, Université de Rennes 1. [Foley e.a., 1982] J. Foley and A. V. Dam. Fundamentals of Interactive Computer Graphics. Addison Wesley Publishing Company, London (1982). [Foley e.a., 1995] J. Foley, A. V. Dam, S. K. Feiner, and J. Hugues. Computer graphics Principles and practice in C. Addison Wesley Publishing Company, London (1995). [Fuchs, 1996] P. Fuchs. Les interfaces de la réalité virtuelle. Les Presses de l Ecole des Mines de Paris (1996). ISBN 2-9509954-0-3. [Fuchs e.a., 1999] P. Fuchs, F. Nashashibi, and D. Lourdeaux. A theoretical approach of the design and evaluation of a virtual reality device. In Virtual Reality and Prototyping 99 (1999), pages 11 20, Laval, France. [Guillot e.a., 2000] A. Guillot and J. Meyer. From sab94 to sab2000 : What s new, animat? In Proceedings From Animals to Animats 00, volume 6 (2000), pages 1 10. [Harrouet, 2000] F. Harrouet (2000). oris : s immerger par le langage pour le prototypage d univers virtuels à base d entités autonomes. Thèse de doctorat, Université de Bretagne Occidentale, Brest. [Hégron, 1985] G. Hégron. Synthèse d Image : algorithmes élémentaires. DUNOD informatique (1985). [Hégron e.a., 1992] G. Hégron and B. Arnaldi. Computer Animation : Motion and Deformation Control. Eurographics Technical Report Series. Eurographics 92 Tutorial Notes, Cambridge (GB) (1992). [Hégron e.a., 1995] G. Hégron, B. Arnaldi, and C. Lecerf (1995). Computer Animation, chapter Dynamic Simulation and Animation. Prentice Hall. [Herrmann e.a., 1998] H. Herrmann and Luding. Review article : Modeling granular media on the computer. Continuum Mechanics and Thermodynamics, 10(4) :189 231 (1998). [Kajiya, 1983] J. Kajiya. New techniques for ray tracing procedurally defined objects. ACM Computer Graphics, 17(3) :91 102 (1983). [Kochanek, 1984] D. H. Kochanek. Interpolating splines with local tension, continuity, and biais control. Computer Graphics, 18(3) :124 132 (1984).
Introduction à la réalité virtuelle 31 [Kodjabachian e.a., 1998] J. Kodjabachian and J. M. J.A. Evolution and development of neural controllers for locomotion, gradient-following, and obstacle-avoidance in artificial insects. IEEE Transactions on Neural Networks, 9 :796 812 (1998). [Le Moigne, 1997] [Le Moigne, 1990] [Levy-Leblond, 1996] [Luciani, 2000] J. Le Moigne. La théorie du système général : théorie de la modélisation. Presses Universitaires de France, Paris (1997). J.-L. Le Moigne. La modélisation des systèmes complexes. Collections AFCET Systèmes. Bordas, Paris (1990). J.-M. Levy-Leblond. Aux contraires. L exercice de la pensée et la pratique de la science. NRF Essais. Gallimard (1996). A. Luciani. From granular avalanches to fluid turbulences through oozing pastes : a mesoscopic physically-based particle model. In Proceedings of Graphicon 00, volume 10 (2000), pages 282 289. [Meyer e.a., 1991] J. Meyer and A. Guillot. Simulation of adaptive behavior in animats : review and prospect. In Proceedings From Animals to Animats 91, volume 1 (1991), pages 2 14. [Meyer e.a., 1994] [Morin, 1977] [Piaget e.a., 1979] [Péroche e.a., 1998] [Quéau, 1993] [Rabardel, 1995] [Reeves, 1981] J. Meyer and A. Guillot. From sab90 to sab94 : four years of animat research. In Proceedings of From Animals to Animats 94, volume 3 (1994), pages 2 11. E. Morin. La méthode, Tome 1 : la nature de la nature. Editions du Seuil, Paris (1977). J. Piaget and N. Chomsky. Théories du langage, théories de l apprentissage. Seuil (1979). B. Péroche, D. Ghazanfarpour, D. Michelucci, and M. Roelens. Informatique graphique, 2ème édition. Hermes (1998). P. Quéau. Le virtuel, vertus et vertiges. Collection Milieux. Champ vallon, Seyssel (1993). P. Rabardel. Les hommes et les technologies, approche cognitive des instruments contemporains. Armand Colin (1995). ISBN 2-200-21569- X. W. T. Reeves. Inbetweening for computer animation utilizing moving point constraints. Computer Graphics, 15(3) :263 269 (1981), In proceedings of SIGGRAPH 81. [Roth, 1982] S. Roth. Ray casting for modeling solids. Computer Graphics and Image Processing, 18(2) :109 144 (1982). [Sillion e.a., 1998] [Sims, 1994] [Steketee e.a., 1985] [Thalmann, 1996] [Tisseau, 2001] [Varela e.a., 1993] F. Sillion and C. Puech. Radiosity and Global Illumination. Morgan Kaufmann Publishers, San Francisco (1998). K. Sims. Evolving 3d morphology and behavior by competition. Artificial Life, 4 :28 39 (1994). S. N. Steketee and N. I. Badler. Parametric keyframe interpolation incorporating kinetic adjustement and phrasing control. Computer Graphics, 19(3) :255 262 (1985), In proceedings of SIGGRAPH 85. D. Thalmann. A new generation of synthetic actors : the interactive perceptive actors. In Proceedings of Pacific Graphics 96 (1996), pages 200 219. J. Tisseau (2001). Réalité virtuelle : autonomie in virtuo. Habilitation à diriger des recherches, Université de Rennes I, Rennes. F. Varela, E. Thomson, and E. Rosch. L inscription corporelle de l esprit. Seuil (1993). [Vidal, 1984] F. Vidal. L instant créatif. Flammarion (1984).
32 Le traité de la réalité virtuelle [Whitted, 1980] [Wilson, 1985] T. Whitted. An improved illumination model for shaded display. Communications of the ACM, 23 :343 349 (1980). S. Wilson. Knowledge growth in an artificial animal. In Proceedings Genetic Algorithms and their Applications 85 (1985), pages 16 23. Adresses des sites d entreprises et d institutions : [http1] [http2] [http3] [http4] [http5] [http6] [http7] [http8] [http9] [http10] [http11] [http12] [http13] [http14] [http15] [http16] [http17] [http18] [http19] [http20] [http21] [http22] http ://www-sop.inria.fr/epidaure/gt-rv/gt-rv.html http ://www.industrie.gouv.fr/rntl/fichesa/perf-rv.htm http ://www.laval-virtual.org http ://www.enib.fr/gt-rv8 http ://www.ai.cluny.ensam.fr http ://www.enib.fr et http ://www.cerv.fr http ://www.enst.fr/ revico http ://birp.com/micad http ://lsc.cemif.univ-evry.fr :8080/dea http ://www-caor.ensmp.fr/ http ://www.istia.univ-angers.fr/innovation http ://www.simteam.com http ://www.immersion.fr http ://www.ircam.fr/produits/techno/multimedia/elle.html http ://www.college-de-france.fr/chaires/chaire3/space1-4.html http ://www.csgd.com/topit.html http ://www.limsi.fr/recherche/actionvenise/assticrvc/assticrvc.html http ://www.infres.enst.fr/ grumbach/cognition-virtuelle/ http ://www.laps.univ-mrs.fr http ://www.staps.u-psud.fr/cress/ http ://www.virtual-worlds.net/vw2000 http ://www.laps.univ-mrs.fr/ecolerv-c
2 MODÈLES GÉOMÉTRIQUES DES ENVIRONNEMENTS VIRTUELS Guillaume Moreau 2.1 INTRODUCTION Dans un environnement virtuel, l observateur évolue dans un monde qui est une représentation d une partie de la réalité ou d un environnement imaginaire [Fuchs, 1996]. Dans la plupart des cas, la représentation qui est faite à l observateur est en premier lieu visuelle. Cette représentation visuelle est formée par la projection d un modèle géométrique 3D de l environnement virtuel sur une ou plusieurs images planes 2D par l intermédiaire de caméras virtuelles dont le mouvement peut être lié à celui de l observateur. Cet environnement n est bien sûr pas uniquement constitué d éléments de nature géométrique ; prenons l exemple de ce qu on appelle la ville virtuelle. Une ville virtuelle se compose au moins d une représentation du bâti et du réseau routier ainsi que d acteurs évoluant dans cette ville (cf. figure 2.1 représentant une simulation de tramway dans un carrefour nantais [Donikian e.a., 1998]). Les représentations géométriques du bâti et du réseau routier sont insuffisantes pour permettre cette simulation [Donikian, 1997]. La seule intégration d un tramway dans le cadre de cette étude a nécessité la création d un modèle géométrique et cinématique d un tramway, mais aussi la définition du comportement du couple conducteur-tramway au passage de certains éléments remarquables du réseau routier (feux, intersections, arrêts de tramway). Dès lors, la modélisation du réseau routier devient non seulement géométrique, mais aussi topologique (orientation dans un réseau) et sémantique (signification du feu rouge) [Thomas, 1999]. Figure 2.1 : Etude d impact sur l intégration d un tramway dans un carrefour nantais (image IRISA/Siames). Si nous avons rapidement montré que la modélisation d un environnement virtuel n est pas uniquement géométrique, celle-ci constitue néanmoins une étape importante du
34 Le traité de la réalité virtuelle processus de construction d un environnement virtuel. Ce chapitre et le chapitre suivant y seront consacrés. Dans un premier temps, nous ferons un tour des modèles théoriques associés à la description géométrique, puis nous aborderons les outils de la modélisation. Les aspects non géométriques seront abordés ensuite dans les parties II «Modèles pour les rendus sensori-moteurs» et III «Modèles pour le rendu comportemental». 2.1.1 TYPES D OBJETS Avant de modéliser des objets géométriques, il faut pouvoir répondre à la question : que cherche-t-on à modéliser? il est évident que la modélisation d un solide indéformable est différente de celle d un fluide compressible. L objet le plus simple est bien sûr le solide rigide non déformable. Cet objet ne peut subir que des transformations solides T = (R,t), où R est une rotation dans l espace et t une translation. Le cube de la figure 2.2 est un exemple de solide rigide indéformable. Le principal avantage des solides rigides est de n avoir à calculer que leur position solide dans l espace avant d effectuer leur rendu. Les modèles non-rigides peuvent se décomposer quant à eux en plusieurs catégories : les solides articulés : ce sont des solides rigides indéformables reliés entre eux par des liaisons mécaniques (par exemple une liaison pivot). Ils sont utilisés pour représenter par exemple le mouvement d un bras relié à un tronc ou les roues d une voiture qui sont liées au chassis, en première approximation bien sûr. C est aussi le cas du pendule de la figure 2.3. Les liaisons entre les solides sont représentées par leurs paramètres (ici les angles θ 1 et θ 2 ) ; les solides déformables dont les déformations suivent les lois de la mécanique (ou pas, dans un monde imaginaire). Ce peut être la peau d un être vivant, une balle se déformant au contact du sol. Ces modèles sont régis par leurs paramètres mécaniques. Il est donc nécessaire de calculer l évolution de leur forme avant d effectuer leur rendu visuel. Les vignettes de la figure 2.4 présentent l évolution de la lampe Luxo se déformant sous l effet de son propre poids [Cozot, 1996] ; en dernier les modèles non-solides, qui représentent tout ce qu on ne peut pas associer à la notion d objet. On peut citer les fluides, les modèles particulaires qui associent plusieurs sous-modèles associés mécaniquement entre eux. La création d un jet de lave par exemple utilise des modèles particulaires. Ces différents type de modèles seront étudiés plus largement dans les chapitres suivants : les modèles physiques seront l objet du chapitre 7 et le chapitre 11 reviendra sur l utilisation des modèles à particules pour la modélisation des environnements naturels. Il existe par ailleurs des modèles qui ne rentrent pas en compte dans le cadre de la réalité virtuelle à utilisation professionnelle ; ils sont associés aux techniques dites de rendu non photo-réaliste [Gooch e.a., 2001]. Ces techniques ont des résultats souvent spectaculaires mais elles ne peuvent être classées en familles simples comme celles que nous venons de citer. De plus leur utilisation en réalité virtuelle reste aujourd hui marginale. Elles ne seront donc pas abordées dans cet ouvrage. La contrainte majeure de la réalité virtuelle en terme de rendu graphique porte naturellement sur la nécessité absolue d un rendu temps réel du modèle 3D. Il est donc évident qu on cherche à privilégier dans les environnements virtuels les objets les plus simples (solides rigides et articulés) au détriment des plus complexes (fluides visqueux
Modèles géométriques des environnements virtuels 35 Figure 2.2 : Solide rigide : un cube. θ 1 θ 2 Figure 2.3 : Solide articulé : un bi-pendule. Figure 2.4 : Objet déformable : la lampe Luxo se déformant sous son propre poids (image IRISA/Siames).
36 Le traité de la réalité virtuelle par exemple). On se limite donc essentiellement dans les paragraphes qui suivent à des solides rigides représentant des objets manufacturés ou des éléments naturels. 2.1.2 PROPRIÉTÉS DES MODÈLES Selon Michael Mortenson [Mortenson, 1985], «un modèle géométrique est une représentation mathématique non ambiguë et complète de la forme d un objet physique afin de la traiter sur ordinateur». Comme il existe une variété de modèles, il est utile de pouvoir comparer les différentes représentations d un même objet entre elles. Les critères utilisés sont les suivants : le domaine : il s agit de l ensemble des objets qu une représentation peut modéliser ; la complétude : c est la capacité théorique d une représentation à pouvoir répondre à certaines questions géométriques simples comme l aire d une surface, la position d un point par rapport à un volume... ; l unicité de la représentation d un objet : ce critère est important lorsqu on cherche à déterminer l égalité de deux objets, à un couple rotation/translation près ; la facilité de manipulation : c est la base de la création et de la modification du modèle ; les performances techniques : la précision, la concision de la structure, mais aussi la rapidité des algorithmes associés (détection de collision, rendu visuel...). Il existe deux techniques fondamentales pour représenter des objets en trois dimensions : la représentation volumique : elle consiste naturellement à déterminer une représentation informatique de leur volume ; la représentation surfacique : elle provient du constat que nous nous situons dans un espace euclidien à trois dimensions où tout objet fini régulier a une frontière non dégénérée. On peut donc déterminer le volume de l objet comme étant l intérieur de sa frontière. En résumé, on cherche donc ici à modéliser la sphère plutôt que la boule. Si cela peut paraître plus complexe en théorie, cette représentation est en réalité plus utile, puisque dans le cas de solides non transparents, le rendu n est effectué pour la seule surface de l objet. Pour les représentations volumiques comme surfaciques, il existe plusieurs modèles mathématiques vérifiant chacun des propriétés différentes. Nous verrons dans les sections suivantes les principaux types de modèles tant volumiques que surfaciques puis l algorithmique associée aux conversions de modèles. Enfin nous verrons les améliorations que nous pouvons apporter à une modélisation pour l utiliser dans un environnement virtuel, avec les contraintes de temps réel qui s y rattachent. 2.2 MODÈLES VOLUMIQUES Les modèles dits volumiques sont les modèles qui représentent le volume d un objet. Deux familles de techniques sont utilisées : l énumération spatiale : elle consiste à découper l espace en un nombre important de petites cellules qui appartiendront totalement, en partie, ou pas du tout au volume de l objet. La modélisation consiste alors à trouver un découpage de l espace et une fonction qui détermine le remplissage d une cellule lorsque seule une partie de celleci est occupée par l objet à modéliser ;
Modèles géométriques des environnements virtuels 37 la CSG : La CSG (Constructive Solid Geometry) est un arbre binaire de construction où les feuilles sont des primitives géométriques et les nœuds des opérateurs booléens. 2.2.1 ÉNUMÉRATION SPATIALE On cherche donc à construire une partition de l espace. On utilise des axes de découpage orthogonaux aux axes du repère global pour simplifier. Chaque cellule est ainsi localisée par rapport à l objet à représenter : si elle est pleine, on dit qu elle est à l intérieur de l objet, si elle est vide on dit qu elle est à l extérieur de l objet. Si elle n est que partiellement remplie, on fournira une fonction de test d appartenance. La figure 2.5 présente un maillage grossier d un lapin en deux dimensions. La seconde vignette prouve qu il est impossible de reconnaître visuellement un lapin à partir d un maillage si large. Le problème de la précision suffisante du maillage est donc posé. La notion de maillage régulier se généralise aisément en trois dimensions. Figure 2.5 : Maillage régulier en deux dimensions d un lapin. Le choix du maillage revêt une grande importance puisqu il est très directement lié à la concision de la représentation. Lorsqu on travaille dans un espace à 3 dimensions avec un maillage uniforme, le nombre de cellules croît avec le cube du niveau de subdivision. Pour un volume formé dans un cube de 10 cm de côté découpé avec une précision de 1 mm, on obtient déjà 1 million de cellules élémentaires. Cette technique est très utilisée en imagerie médicale où les images scanner ont une résolution de 256 pixels par 256 (voire 512 par 512 maintenant). Chaque coupe scanner utilise à elle seule plus de 65000 cellules, nombre qu il faut encore multiplier par le nombre de couches. Pire encore, quelque soit le niveau de subdivision de l espace, on ne pourra jamais représenter de façon exacte une simple droite oblique (et à plus forte raison un cercle ou une sphère). On pense alors logiquement à utiliser un maillage adaptatif, c est-à-dire grossier sur les grands volumes de l intérieur de l objet et plus fin vers ses frontières. L utilisation d un maillage adaptatif n augmentera pas le domaine des objets modélisables de façon exacte, mais en permettra une représentation plus compacte. On construit donc une représentation arborescente d un objet selon un algorithme descendant : si une cellule est uniforme, une feuille terminale est créée ; dans le cas inverse, 2 d (d étant la dimension de l espace considéré, en 2D on parle de quadtrees, en 3D d octrees) cellules filles partitionnant régulièrement la cellule mère sont créées et l algorithme est appliqué à chacune d entre elles [Jackins e.a., 1980]. Bien entendu on fixe une limite maximale
38 Le traité de la réalité virtuelle de subdivision de façon à ce que l algorithme puisse se terminer. La figure 2.6 montre un exemple de calcul d un quadtree à partir d une image (qui est elle-même par définition un maillage régulier de l espace en deux dimensions). Le passage dans un espace de dimension 3 est tout aussi évident. 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 000 111 Figure 2.6 : Construction d un quadtree à partir d un maillage régulier d un espace à deux dimensions (dans cet exemple, on a modélisé l espace libre, c est-à-dire le complémentaire des objets). Il existe aussi des techniques de subdivision plus élaborées puisqu elles ne découpent pas les cellules suivant les axes, mais suivant des schémas simples ; elles sont utiles pour découper de façon exacte des polyèdres. On parle alors de polytree ou de PM tree (PM signifiant alors Polygonal Map). La représentation informatique d une représentation par énumération d un objet est simple : une grille régulière peut-être représentée par un tableau à trois dimensions de booléens. Les structures d octree (généralisation du quadtree dans un espace à trois dimensions) sont des arbres octaux que l on construit récursivement. L utilisation de structures d énumération spatiale (régulières ou adaptatives) est très simple d un point de vue algorithmique, les complexités sont souvent assez faibles, même les opérateurs géométriques booléens sont faciles à mettre en œuvre. Les problèmes se posent lors des changements d échelle (dont le facteur n est pas un multiple de 2) ou lors des rotations (d angle différent de 90 degrés). Du point de vue des propriétés énoncées en 2.1.2, on peut dire que : le domaine des objets représentés est très large si on ne fixe pas une marge d erreur strictement nulle. En revanche, le domaine de représentation exacte est particulièrement limité. Toutefois, la précision de modélisation est connue à l avance ; le modèle est bien adapté aux algorithmes simples ; l unicité des modèles n est pas vérifiée à cause de la sensibilité des modèles à l orientation de l objet ; dans l ensemble, les modèles sont faciles à manipuler, même si les rotations et les mises à l échelle peuvent poser de gros problèmes ; les structures de données sont particulièrement lourdes puisque la précision est une racine cubique du nombre de cellules utilisées. Cette complexité peut être diminuée en utilisant des structures arborescentes comme les octrees.
Modèles géométriques des environnements virtuels 39 Comme on l a évoqué précedemment, les grilles sont très utilisées dans le domaine médical (IRM, scanner), mais aussi en géophysique (l Institut Français du Pétrole par exemple pour représenter des cubes de données sismiques). La figure 2.7 montre une reconstruction du sous-sol de la région de Morges dans les Alpes à l aide d un modèle numérique de terrain et d un certain nombre de coupes. On utilise donc essentiellement les grilles pour représenter le réel (données acquises) plutôt que pour des activités de création. Les structures adaptatives ne sont généralement pas utilisées en tant que modèle mais en tant qu intermédiaires de calcul, notamment pour les calculs d intersection. Le rendu visuel des modèles volumiques passe soit par une conversion en modèle surfacique soit pas des techniques particulières comme le logiciel OpenGL Volumizer [http1]. Figure 2.7 : Reconstruction du sous sol de la région de Morges (image INRIA/Prisme). 2.2.2 CONSTRUCTIVE SOLID GEOMETRY La CSG est une technique de modélisation particulière puisqu elle ne préjuge pas de la représentation réelle. On peut utiliser la CSG en commun avec des primitives surfaciques, même si la surface résultant de l intersection d une sphère avec un cube sera difficile à calculer. On s intéresse ici à la CSG en tant que représentation d un objet en trois dimensions. On considère donc un ensemble E de primitives géométriques, constitué par exemple de boules, de pavés, de tores... On peut aussi inclure dans E des volumes obtenus par extrusion ou par balayage, cela n a aucune incidence sur le modèle théorique. Le domaine des volumes constructibles est donc l ensemble D engendré par E {0} et les opérateurs ensemblistes, et. Les primitives CSG sont très utilisées dans le domaine de la CAO pour créer des formes de pièces. Si la plupart des modeleurs 3D du commerce supportent la CSG, le logiciel povray [http2] du domaine public est des rares logiciels de rendu à l exploiter de façon native. On peut très facilement créer des modèles d objets CSG à l aide du langage de script. L exemple suivant montre la création d un pavé percé par trois trous dont l un
40 Le traité de la réalité virtuelle est rempli par un cylindre 1. L arbre CSG associé au fichier est représenté figure 2.8. union cylindre différence boite union cylindre cylindre Figure 2.8 : Exemple d arbre CSG. cylinder { <0,-4,0> <0,4,0> 0.2 pigment { Yellow } } difference { box { <-1.5,-0.5,-0.5> <1.5,0.5,0.> } cylinder { <-0.8,0,-3> <-0.8,0,3> 0.1 } cylinder { <0.8,0,-3> <0.8,0,3> 0.1 } pigment { Red } } En y ajoutant une caméra et une source de lumière, on obtient l image de la figure 2.9. En termes plus informatiques, la représentation d un arbre CSG est une simple structure d arbre où les feuilles sont des primitives géométriques et les nœuds des opérateurs booléens. Certains algorithmes de traitement sont extrêmement simples à mettre en œuvre, d autres ne sont pas prévus par la structure (par exemple il est impossible d effectuer un calcul de volume dans le cas général). Le problème fondamental inhérent à 1 Dans le langage de povray, lorsque deux primitives géométriques se suivent, elles sont implicitement reliées par l opérateur union.
Modèles géométriques des environnements virtuels 41 Figure 2.9 : Exemple de pièce modélisée par CSG avec povray la représentation CSG est celui de la représentation visuelle des primitives élémentaires et la détermination du résultat de l application des opérateurs sur ces structures. En termes de propriétés, nous pouvons dire que : l ensemble des objets représentés dépend essentiellement des primitives de base utilisées, mais peut être très étendu ; le modèle est très adapté à certains calculs tout en rendant des opérations, comme un simple calcul de volume, complètement impossibles ; l unicité n est évidemment pas vérifiée, l ordre de construction influe sur les primitives utilisées et sur l ordre d application des opérateurs ; les modèles CSG sont très faciles à utiliser et sont donc généralement implantés dans tous les outils de modélisation 3D, même si la structure interne de ces derniers est plutôt de nature surfacique ; la précision et la concision des modèles dépendent essentiellement des primitives utilisées et de leur adéquation à l objet à modéliser. Les modèles CSG sont naturellement la clé de voûte des outils de CAO mécanique, à la fois pour des questions d ergonomie et de fabrication des objets conçus. Toutefois, leur adéquation à la réalité virtuelle est plus que discutable comme nous le verrons par la suite. En matière de rendu visuel, la CSG est plutôt utilisée dans des logiciels non temps réel comme les logiciels de lancer de rayon. En effet les techniques de lancer de rayon peuvent s affranchir du calcul explicite du volume de l objet modélisé. 2.3 MODÈLES SURFACIQUES Nous arrivons maintenant à la représentation surfacique où nous allons chercher à modéliser les frontières de l objet. Pour cette raison, la modélisation surfacique est aussi appelée Brep (Boundary Representation). Le problème est différent en ce sens que nous déterminons cette fois une surface, c est-à-dire un objet à deux dimensions de l espace à trois dimensions. Il faut alors chercher à représenter la surface frontière sous une forme qui la rende utilisable pour des traitements algorithmiques. Les modèles surfaciques sont classés suivant le type de surface utilisé. 2.3.1 UTILISATION DE SURFACES PLANES C est le modèle le plus généralement utilisé pour le rendu temps réel. On représente la surface frontière d un objet à l aide d un ensemble de faces polygonales connectées
42 Le traité de la réalité virtuelle entre elles. Une frontière se représente donc à l aide de trois ensembles : un ensemble de sommets S, un ensemble d arêtes A et un ensemble de faces F. Le modèle doit respecter certaines contraintes d intégrité : les faces ne s intersectent qu en leurs sommets ou arêtes communes ; une arête appartient à deux faces ; tous les sommets adjacents à un sommet donné forment dans l espace un polygone simple (pas d intersection entre les arêtes, si possible convexe). On utilise généralement des triangles comme polygones, pour simplifier au maximum les calculs, le triangle étant la surface polygonale fermée convexe la plus simple. Elle est de plus forcément planaire. Tout polygone pouvant être réduit à un ensemble de triangles, les problèmes sont donc équivalents. La figure 2.10 présente un exemple de pièce modélisée à l aide d un maillage triangulaire. La précision du maillage n est limitée que par le nombre de triangles qu on peut afficher. Aujourd hui, les cartes graphiques 3D sont capables d afficher un très grand nombre de triangles par seconde (plusieurs dizaines de millions), mais en contrepartie la plupart d entre ne sont capables d afficher à ce rythme que des triangles. Les jeux constituant le domaine d application majoritaire et donc la direction de développement privilégié, les constructeurs mettent l accent sur les effets (transparences, ombres portées, shaders...). Figure 2.10 : Exemple de pièce modélisée à l aide d un maillage triangulaire. 2.3.2 UTILISATION DE SURFACES NON PLANES Le modèle proposé au paragraphe précédent se généralise sans problème à des surfaces non-planes. Les contraintes d intégrité sont plus difficiles à faire respecter. Les surfaces non planes présentent généralement l avantage de la compacité de la représentation. Elles sont plus faciles à manipuler pour des opérateurs de CAO puisqu elles nécessitent moins de paramétrages. Leur aspect visuel est plus agréable à quantité de données égale, elles permettent de représenter plus facilement et plus précisément des surfaces lisses. En règle générale, les modeleurs utilisent des modélisations à base de surfaces gauches, qu on cherche ensuite à trianguler afin de simplifier les calculs de rendu. La triangulation, qui est un problème complexe abordé dans la section 2.4, est nécessairement un compromis entre la précision du modèle triangulé, le temps nécessaire au rendu et le temps consacré à la triangulation elle-même. Les modeleurs actuels font la part belle aux surfaces NURBS pour la modélisation d objets. C est le cas de CATIA pour la CAO, mais aussi de 3DS Max pour l infographie. Les formats de fichiers dédiés à la réalité virtuelle (VRML par exemple)
Modèles géométriques des environnements virtuels 43 permettent d ailleurs l incorporation directe de surfaces NURBS, même si elles seront triangulées pour la visualisation temps réel. 2.3.2.1 Les surfaces NURBS La plupart des attributs des surfaces NURBS sont décrits dans la signification des initiales : NU : les surfaces NURBS sont non-uniformes; R : les équations qui les décrivent sont rationnelles ; BS : ce sont des surfaces splines de Bézier. En résumé, les NURBS sont des surfaces paramétriques rationnelles construites à partir de deux paramètres u et v, d un ensemble de points de contrôle, d une séquence de nœuds et du poids affecté à chacun des points de contrôle. Elles permettent de représenter avec beaucoup de précision les surfaces utilisées en CAO, ainsi que de prendre en compte les différents types de continuité entre surfaces d un même objet. Les surfaces NURBS sont des généralisations des B-splines non-rationnelles qui proviennent ellesmême des courbes de Bézier rationnelles. On peut aller encore plus loin en ajoutant que ces dernières sont une généralisation des courbes de Bézier... Reprenons depuis le début : une courbe de Bézier de degré n est une courbe paramétrique C(u) définie par : C(u) = n B i,n (u)p i 0 u 1 (2.1) i=0 Les P i sont appelés les points de contrôle de la courbe. Les fonctions de base B i,n sont les classiques polynômes de Bernstein de degré n définis par : B i,n (u) = n! i!(n i)! ui (1 u) n i (2.2) Les courbes de Bézier sont très utilisées pour le dessin interactif en deux dimensions, on en trouve dans toutes les applications Windows par exemple. Typiquement, on utilise une courbe de degré 3 (qui possède par conséquent 4 points de contrôle), comme celle de la figure 2.11. Malheureusement, les courbes de Bézier ne permettent pas de représenter les coniques. Une conique (par exemple un cercle) peut être représentée à l aide d une fonction rationnelle (le quotient de deux polynômes), soit en dimension 3 : x(u) = X(u) y(u) = Y (u) z(u) = Z(u) (2.3) W(u) W(u) W(u) A partir de cette observation, on définit les courbes de Bézier rationnelles : C(u) = n i=0 B i,n(u)w i P i n i=0 B i,n(u)w i 0 u 1 (2.4)
44 Le traité de la réalité virtuelle Figure 2.11 : Courbe de Bézier de degré 3, avec ses 4 points de contrôle. où les P i (respectivement les B i ) sont toujours les points de contrôle (respectivement les polynômes de Bernstein). Les w i sont des scalaires qu on appelle les poids des points de contrôle. Leur rôle consiste à attirer ou au contraire repousser la courbe des points de contrôle. Généralement, l utilisation d un nombre réduit de points de contrôle ne permet pas de dessiner facilement la forme adéquate. Si on augmente le nombre de points de contrôle, on augmente par conséquent le degré des polynômes, ce qui les rend moins intéressants numériquement (instabilité numérique, coûts de calcul), mais aussi du point de vue de l utilisation interactive (un point de contrôle a une influence sur toute la courbe ce qui limite les possibilités de modifications très localisées). On va donc créer des courbes de Bézier jointes bout à bout, en y ajoutant des contraintes de continuité. Pour ceci, on va utiliser certains points de contrôle plusieurs fois. La courbec(u) est alors définie sur u [0, 1] et est composée des segmentsc i (u), 1 i m. Ces segments sont joints à leurs extrémités u 0 = 0 < u 1 < u 2 < u 3 < u 4 = 1 avec un certain niveau de continuité. On dit que la courbe est C k continue à une extrémité u i si C (j) i (u i ) = C (j) i+1 (u i) pour tout 0 j k, où C (j) i représente la j-ème dérivée de C i. Pour rendre les équations compatibles avec une implantation informatique, on utilise la définition suivante : C(u) = n N i,p P i a u b (2.5) i=0 où les P i sont les points de contrôle et N i,p les fonctions B-splines de base de degré p. Il y a plusieurs approches pour définir ces fonctions B-splines de base. Nous nous contenterons de l approche récurrente, bien adaptée à une implantation informatique. La B- spline a des points de contrôle de jonction entre ses segments qu on appelle des nœuds. Une séquence de ces nœuds est appelée le vecteur nœud et s écrit U = (u 0,..., u m ). U est une séquence non-décroissante de nombre réels. La fonction B-spline de base est alors définie par la formule de récurrence suivante : N i,0 (u) = N i,p (u) = { 1 si ui u u i+1 0 sinon u u i u i+p u i N i,p 1 (u) + ui+p+1 u u i+p+1 u i+1 N i+1,p 1 (u) (2.6) L équation (2.6) peut résulter en un quotient 0/0 qu on définit alors à 0. Le vecteur nœud d une courbe B-spline non-uniforme est alors un vecteur non-périodique et non-
Modèles géométriques des environnements virtuels 45 uniforme de la forme : U = (a,..., a, u } {{ } p+1,...u m p+1, b,..., b) (2.7) } {{ } p+1 p+1 On appelle polygone de contrôle d une courbe B-spline le polygone obtenu en joignant tous les points de contrôles P i. On généralise le résultat obtenu aux courbes rationnelles et on définit les courbes B- splines rationnelles et non-uniformes, c est-à-dire les courbes NURBS : n i=0 C(u) = N i,p(u)w i P i n i=0 N a u b (2.8) i,p(u)w i où les P i sont les points de contrôle, les w i les poids et les N i les fonctions B-splines de base définies sur le vecteur nœud non-périodique et non-uniforme U de l équation (2.7). On peut représenter une courbe rationnelle à n dimensions comme une courbe polynomiale à n + 1 dimensions en utilisant les coordonnées homogènes. Les points de contrôle en coordonnées homogènes s écrivent alorsp w i = (w i x i, w i y i, w i z i, w i ) dans un espace à 4 dimensions où w i 0. Cette opération est équivalente à une projection perspective sur l origine. On peut alors réécrire l équation (2.8) n C w (u) = N i,p (u)p w i (2.9) i=0 C est cette dernière équation que nous allons utiliser pour définir les surfaces NURBS, en coordonnées homogènes : n S w (u, v) = N i,p (u)n j,q (v)p i,j (2.10) i=0 j=0 où P w i,j forme un réseau bidirectionnel de points de contrôle, N i,p et N j,q sont les fonctions B-splines de base définies sur les vecteurs nœuds : U V = {a,..., a, u } {{ } p+1,...u r p+1, b,..., b} } {{ } p+1 p+1 = {c,..., c, u } {{ } q+1,...u s q+1, d,..., d} } {{ } q+1 q+1 (2.11) avec r = n + p + 1, s = m + q + 1, les limites [a, b] et [c, d] étant généralement fixées à [0, 1]. 2.3.2.2 Avantages et inconvénients des NURBS Après cet intermède théorique, il me semble important de discuter des avantages et inconvénients d utiliser des NURBS comme surfaces de modélisation. Les avantages sont indéniablement :
46 Le traité de la réalité virtuelle le domaine modélisable de façon exacte est très vaste, la modification interactive est aisée grâce à l utilisation de points de contrôle et de nœuds. Les NURBS sont capables de modéliser des coniques, ce qui est impossible avec des surfaces de Bézier ; le coût calculatoire pour la représentation n est pas énorme, la plupart des calculs sont numériquement stables ; les NURBS sont invariantes par les transformations géométriques courantes (rotation, translation, projection perspective). Il suffit d appliquer ces transformations aux points de contrôle ; les interprétations géométriques sont aisées, les NURBS étant de simples généralisations des courbes et surfaces de Bézier ; la représentation est particulièrement compacte pour des formes complexes, qui peuvent ne même pas être représentables par d autres méthodes. Malheureusement, ceci ne va pas sans quelques inconvénients : les NURBS contiennent énormément d informations géométriques, la représentation de courbes et de surfaces simples traditionnelles peut présenter des inconvénients en terme de stockage ; ainsi, la représentation d un cercle dans l espace ne requiert normalement que le rayon, le centre du cercle et une normale au plan du cercle, soit 7 nombres réels. Si on utilise des NURBS, il faut 7 points de contrôle homogènes et 10 nœuds, soit 38 nombres réels. Cette remarque dépend considérablement du type de surface à représenter ; la manipulation des poids peut mener à des constructions aberrantes ; les opérations courantes (intersection de surfaces) sont extrêmement difficiles à mener, ce qui peut s avérer particulièrement gênant en réalité virtuelle ; certains algorithmes fondamentaux sont instables numériquement (calcul des paramètres (u, v) d un point (x, y, z) appartenant à une surface). 2.4 GÉOMÉTRIE ALGORITHMIQUE Dans cette section, nous nous proposons d aborder quelques notions de géométrie algorithmique pour la conversion de modèles. Pour des questions de rapidité, les modèles utilisés en réalité virtuelle sont des modèles surfaciques à base de maillages polygonaux. Les objets représentés à l aide d autres modèles doivent donc être convertis en objet représentés par des maillages polygonaux. De façon plus générale, nous présentons aussi quelques algorithmes permettant de construire des surfaces à partir d un nuage de points non structurés. Ces algorithmes sont tout aussi utiles lorsqu on numérise des objets réels. 2.4.1 TRANSFORMATION D UN VOLUME EN SURFACE Quand on a affaire à des données médicales comme des coupes scanner, on utilise d abord des techniques de segmentation pour extraire les contours intéressants qui caractériseront les volumes à reconstruire, puis on effectue une mise en volume, c est-àdire qu on construit un modèle volumique tel qu on l a décrit en 2.2. Pour visualiser ce modèle en temps réel, il faut donc le convertir en un modèle surfacique à base de triangles. La technique de référence est l algorithme des Marching Cubes, conçu par Lorensen et Cline [Lorensen e.a., 1987] en 1987. Cet algorithme n est pas parfait, mais
Modèles géométriques des environnements virtuels 47 reste universellement reconnu. La suite de ce paragraphe est donc consacré à la présentation de l algorithme des Marching Cubes. Il s agit de découper l espace en une grille régulière de cubes, de déterminer la topologie de la surface à l intérieur du cube, de construire les triangles associés et enfin de passer au cube suivant. On construit donc un cube à partir de quatre points d une coupe et quatre points d une coupe adjacente. Il faut ensuite valuer les sommets du cube ; on assigne à chaque sommet 1 si la valeur de la coupe en ce point est supérieur au seuil et 0 sinon. Chaque cube est donc valué par 8 nombres égaux à 0 ou 1, ce qui donne 2 8 = 256 cas possibles. En mettant à profit toutes les symétries du cube et du problème, on peut limiter l étude à 14 cas dont 2 sont décrits figure 2.12. En utilisant une interpolation linéaire pour déterminer les points d intersection de la surface recherchée et des arêtes du cube, on construit ainsi de 0 à 4 triangles par cube. L algorithme possède diverses améliorations, mais le principe reste celui-ci. Les limitations des Marching Cubes portent sur la génération possible de triangles aberrants. Figure 2.12 : Exemple de construction des triangles à partir de la valuation des sommets des cubes (les sommets valués à 1 sont indiqués par un point noir). La figure 2.13 présente une coupe scanner d une mâchoire humaine numérisée dans le cadre du projet Visimplant. Les coupes scanner sont segmentées afin de séparer les différents matériaux présents. L ensemble des coupes scanner est utilisée pour reconstruire un modèle en trois dimensions de la mâchoire à l aide de l algorithme des Marching Cubes modifié pour éviter la génération de triangles aberrants. La figure 2.14 montre une vue de cette reconstruction [Dutreuil, 2001]. 2.4.2 MAILLAGE POLYGONAL D UN NUAGE DE POINTS Lorsqu on utilise un scanner laser, on obtient en sortie un nuage de points non structuré. Il va falloir construire un maillage polygonal (de préférence de triangles) à partir de ce nuage. Le problème du maillage d un nuage de points consiste donc à déterminer la surface S construite à partir d un ensemble de points p P de la surface réelle S, vérifiant : p P, x S, x = p ou x proche de p (2.12) La suite de ce paragraphe est inspirée de l excellent état de l art présenté par Mencl et Müller à Eurographics 98 [Mencl e.a., 1998] et complété entre autres par le rapport du MPI dirigé par Leif Kobbelt [Kobbelt e.a., 2000]. Avant d effectuer une reconstruction de surface, il faut se poser quelques questions : de la qualité de l échantillonnage dépend le résultat. Si l échantillonnage n est pas dense, certaines méthodes ne fonction-
48 Le traité de la réalité virtuelle Figure 2.13 : Coupes scanner d une mâchoire humaine (image Ecole des Mines de Paris/Centre de Robotique) Figure 2.14 : Reconstruction 3D de la mâchoire à l aide de l algorithme des Marching Cubes (image Ecole des Mines de Paris/Centre de Robotique)
Modèles géométriques des environnements virtuels 49 neront pas. Si celui-ci n est pas assez précis, la reconstruction sera de faible qualité, tandis que s il est trop précis, le volume de données à gérer sera trop important et il faudra mettre en œuvre des techniques de décimation. Il faut aussi analyser les propriétés de la surface à reconstruire : cherche-t-on à conserver les propriétés topologiques de la structure? en dernier lieu, le type de surface a aussi son importance : nous nous intéressons ici aux maillages polygonaux, mais il existe d autres méthodes. Les maillages polygonaux conservent les propriétés topologiques mais ne fournissent pas un aspect très lisse. On peut dénombrer 4 types de méthodes, que nous allons brièvement décrire. Un dernier type de problème ne sera pas abordé car il constitue un domaine de recherche à part entière qui dépasse largement le cadre de ce livre : généralement, les scanners laser sont utilisés plusieurs fois sur l environnement ou l objet à modéliser. On obtient de la sorte plusieurs nuages de points 3D dont le recalage par rapport à un repère absolu peut présenter des défauts. Sans aborder le problème du recalage proprement dit, les algorithmes de construction de surfaces doivent prendre en compte les erreurs de recalage des nuages de points. 2.4.2.1 Méthodes de subdivision spatiale Le principe de ces méthodes consiste à subdiviser la boite englobante de P en un ensemble de cellules disjointes (grilles régulières, octrees, tétraèdres). La seconde étape consiste à sélectionner les cellules traversée par des surfaces, puis à calculer une surface à partir des cellules sélectionnées. La méthode la plus simple consiste donc à diviser la boite englobante de P en voxels (ce sont les éléments d une grille régulière en 3 dimensions). La seconde étape consiste à déterminer les voxels qui contiennent au moins un point de P. La construction de la surface se fait alors en utilisant les quadrilatères extérieurs aux voxels sélectionnés. On peut alors découper les quadrilatères en deux triangles et utiliser différentes méthodes de lissage pour obtenir un aspect visuel plus agréable. On peut éventuellement déformer la surface obtenue pour la rapprocher des points de P. On peut aussi utiliser l algorithme des Marching Cubes décrit en 2.4.1. Edelsbrunner et Mücke proposent une méthode utilisant les α-shapes. On commence par construire une tétraédrisation de Delaunay [Boissonnat e.a., 1995] de P, puis on efface des tétraèdres, des triangles et des arêtes en utilisant des α-boules : tous les tétraèdres, triangles ou arêtes dont la sphère englobante minimum n est pas contenue dans la boule d effacement de rayon α sont effacés. Le résultat est appelé une α-shape. La troisème étape consiste à extraire les triangles en utilisant les règles suivantes : on considère les deux sphères de rayon α passant par les trois points d un triangle. Si au moins une des deux sphères ne contient aucun autre point de P, le triangle appartient à la surface. Le principal problème de cette méthode réside dans le choix du α. C est un paramètre global, un α trop petit peut créer des trous dans les surfaces et déconnecter certains éléments. Il est aussi possible d utiliser une décomposition en cellules orientée-volume, où l on élimine les cellules qui n appartiennent pas au volume délimité par la surface. Ces méthodes sont essentiellement fondées sur la tétraédrisation de Delaunay. Boissonnat propose par exemple d éliminer certains tétraèdres (il commence par ceux qui ont 2 faces, 5 arêtes et 4 points). Cette approche ne permet pas de reconstruire des surfaces à trous, Isselhard propose donc de modifier la procédure d effacement des tétraèdres, en
50 Le traité de la réalité virtuelle permettant l élimination de nouveaux types de tétraèdres. De façon identique Veltkamp utilise des γ-indicateurs (une fonction qui permet de classer les triangles vis-à-vis d une sphère) et élimine les triangles par γ-indicateurs décroissants. Cette technique s adapte très bien aux différences de densité du nuage de points, mais comme l approche de Boissonnat, elle ne permet pas reconstruire les surfaces contenant des trous. 2.4.2.2 Méthodes à fonction de distance Une fonction de distance en géométrie algorithmique est une fonction dont la valeur absolue est la plus courte distance entre un point de l espace et un point de la surface. Elle est négative lorsque le point se trouve à l intérieur du volume délimité par la surface et positive autrement. Le point clé de ce type d approche réside dans la calcul de la fonction de distance. Hoppe [Hoppe e.a., 1992] suggère l idée suivante : à chaque point p i P, on associe un plan tangent estimé. Cette estimation est obtenue en prenant k points de P dans le voisinage de p i et calculant le meilleur plan approximant au sens des moindres carrés. La distance est calculée en déterminant le plan tangent le plus proche du point dont on cherche la distance à la surface. Le problème est alors de trouver une orientation cohérente des plans tangents pour déterminer le signe de la fonction de distance. On utilise pour ceci le graphe de Riemann 2. Comment utiliser une fonction de distance ainsi définie? La méthode de Hoppe et al est une méthode à sélection de cellules qui utilise une fonction de distance : on commence par une décomposition régulière en voxels. Les voxels sélectionnés sont ceux dont les sommets sont de signe opposés. La surface est alors obtenue en utilisant l algorithme des Marching Cubes (cf. section 2.4.1). 2.4.2.3 Méthodes de déformation Il s agit cette fois de déformer une surface initiale jusqu à ce qu elle donne une bonne approximation de la forme, c est-à-dire qu elle constitue une bonne approximation des points de P. Ces méthodes sont particulièrement utiles lorsqu on dispose d une première approximation grossière de la surface. On distingue trois types de méthodes assez différentes : purement géométrique : elle consiste à déformer tout l espace (et donc l objet qui s y trouve) en fournissant des points sources et des points de destination (typiquement des points de la surface), et en interpolant entre ces points ; approche physique : c est tout simplement une approche masses-ressorts telle que décrite au chapitre 7. Les points du maillage sont reliés aux points de P par des ressorts ; approche informatique : on utilise ici un réseau de neurones (feature map de Kohonen) que l on va entrainer pour faire coller la surface aux points de contrôle. La 2 Le graphe de Riemann est le graphe dont les sommets sont les centres o i des plans tangents définis comme les centroïdes des k points utilisés pour les estimer. Deux plans sont connectés ssi le centre de l un d entre est le k-voisinage de l autre. On affecte comme poids aux arcs une valeur égale à 1 moins la valeur absolue du produit scalaire entre les normales aux plans. L orientation est alors déterminée en propageant une orientation de référence par un arbre couvrant minimal.
Modèles géométriques des environnements virtuels 51 difficulté réside dans le fait qu il faut arriver à lier les poids et les points de la surface. L intérêt est de pouvoir modéliser a priori n importe quel type de surface. 2.4.2.4 Méthodes à croissance de surfaces L idée de la construction incrémentale de surface est de constuire les surfaces à partir des points et de leurs propriétés orientées surface. Ceci peut se faire de plusieurs façons très différentes. On peut commencer par relier deux points proches à un endroit de P et ajouter des triangles dont les sommets sont de proches voisins des points déjà reliés. C est ce que propose notamment Boissonnat : on commence par relier les deux points les plus proches de P. Pour attacher un nouveau triangle à ces points (et plus tard aux arêtes de la frontière), on estime localement un plan tangent grâce à un voisinage. Les points sur le voisinage de la frontière sont projetés sur le plan tangent ; le nouveau triangle est obtenu en connectant un de ces points à la frontière (celui qui maximise l angle sous lequel il voit les deux autres points du triangle). Mencl et Müller [Mencl e.a., 1998] proposent une approche qui utilisent la reconnaissance de caractéristiques dans les nuages de points. Cette technique se décompose en plusieurs étapes : calcul d un EMST, c est-à-dire un graphe couvrant euclidien minimal, qui servira de base au graphe de description de surface ; ce graphe est étendu aux feuilles de l arbre, en reliant chacune des feuilles à ses voisins les plus proches ; reconnaissance de caractéristiques : l idée est d intégrer différents algorithmes de reconnaissance dans l algorithme principal tout en conservant la cohérence structurelle d un graphe de description de la surface. Cela permet de s adapter aux différences de densité des nuages de points, aux différents types de surfaces rencontrés, voire même de reconstruire un ruban de Möbius. 2.4.3 DÉCIMATION DE MAILLAGES Afin d être utilisés dans une application de réalité virtuelle, les maillages polygonaux doivent comporter un nombre de polygones raisonnable. Les modèles fournis, par maillage d un volume ou d un nuage de points comportent assez régulièrement trop de polygones. Plus simplement, les maillages issus de logiciels de CAO comportent un niveau de détail trop important pour être visualisés en temps réel. On cherche alors à réduire le nombre de triangles d un modèle. Cette technique s appelle la décimation. Notons que cette technique s applique tout aussi bien pour la génération des niveaux de détail (cf. 2.5.2, page 56). De façon générale, on peut dire que la décimation est la création d une approximation polygonale d un modèle complexe à la précision suffisante pour l application considérée. Cela induit quelques problèmes généraux : quelles sont les données de départ? Il existe différentes approches pour créer des maillages de taille réduite, certaines d entre elles ne procèdent pas à partir d un
52 Le traité de la réalité virtuelle maillage, mais proposent une décimation directement basée sur les nuages de points. Hoppe [Hoppe e.a., 1993] propose par exemple de minimiser une fonction de coût sur un maillage à partir d un nuage de point. Le maillage initial fournit simplement un point de départ pour l algorithme d optimisation ; quelles sont les propriétés géométriques des modèles qui doivent être considérées? Cherche-t-on la précision de l éclairage, le contact entre les surfaces, l aspect rugueux d une surface? la notion d approximation nécessite la définition d une erreur d approximation; une fois définie cette erreur, comment définir la précision suffisante à une application donnée? en dernier lieu, les maillages actuels issus des systèmes de numérisation 3D sont véritablement énormes (le projet Digital Michelangelo obtient des modèles à plusieurs milliards de polygones [Levoy e.a., 2000]) et ne peuvent même pas être chargés en mémoire d un seul tenant. La structuration des maillages et l accès aléatoire à leurs éléments est donc une des nouvelles composantes de la recherche dans le domaine de la décimation. Il existe une large variété de techniques de décimations de maillage dans la littérature, pas forcément dans uniquement dans le domaine de l informatique graphique d ailleurs. Ainsi, les techniques d éléments finis qui impliquent le maillage de la surface ou du volume d un objet mettent aussi en œuvre la décimation. Historiquement, on peut distinguer deux types d approches : celles qui sont un sousensemble du maillage existant, et celles qui recréent un nouveau maillage. L approche la plus simple en apparence est celle de Schröder [Schröder e.a., 1992]. Elle consiste à choisir un des sommets du maillage, à l enlever, puis retrianguler la surface autour de ce sommet. Au contraire, Turk [Turk, 1992] préfère générer de nouveaux sommets dans les régions de la surface, le nombre de sommets générés dépendant de la courbure locale de la surface. Les nouveaux points sont retriangulés. Cette méthode garantit la génération de triangles ayant de bonnes propriétés, mais ne permet guère de garantir une bonne approximation du maillage initial. 2.4.3.1 Algorithmes incrémentaux L algorithme incrémental de Schröder [Schröder e.a., 1992] est paramétré par une borne d erreur ǫ qui donne non pas un maximum, mais un miminum! Le schéma général de l algorithme est le suivant : Répéter trouver une région dont l erreur est inférieure à ǫ enlever des triangles dans la région retrianguler la région Jusqu à aucune région admissible Malheureusement, cette méthode ne donne pas de borne sur la distance entre le maillage initial et le maillage final. De plus, les transformations appliquées sont locales pour résoudre un problème global. Il existe des extensions de cet algorithme qui prennent en compte ce problème : il s agit alors d utiliser des mécanismes de file d attente pour hiérarchiser les transformations en fonction de leur intérêt. Là encore, aucune propriété de
Modèles géométriques des environnements virtuels 53 minimisation globale n est assurée. La question du choix des triangles à éliminer reste posée. Schröder distingue plusieurs types de triangles, comme le montre la figure 2.15. Il pose des conditions sur la connectivité des sommets et des arêtes. Les triangles considérés par son algorithme sont les deux premiers de la figure, les seconds ne sont pas considérés comme admissibles. Les algorithmes de décimation, à l instar de celui de Schröder ne traitent que très rarement les triangles non admissibles. Figure 2.15 : Types de configurations de triangles. 2.4.3.2 Opérateurs Nous avons dit dans le paragraphe précédent qu on enlevait des triangles dans les régions sélectionnés. Les algorithmes se limitent généralement à un petit nombre d opérateurs, si possible inversibles (ce type d algorithme peut aussi être utilisé dans le cas où l on cherche à raffiner un maillage). Le premier opérateur consiste simplement à enlever un sommet, comme le montre la figure 2.16. Il reste cependant trop de degrés de liberté sur cet opérateur : la retriangulation proposée par la figure n est qu une triangulation parmi d autres. Figure 2.16 : Suppression d un sommet dans un maillage. Pour pallier cet inconvénient, il existe un autre type d opérateur, appelé edge collapse, schématisé par la figure 2.17. De sorte, la seule liberté sur l opérateur reste l emplacement du nouveau sommet, qui peut se trouver n importe où sur l arête qui a été supprimée. Une solution classique consiste à choisir l un des deux sommets de cette arête, cela s appelle le restricted edge collapse. Ces opérateurs ne modifient pas la topologie du maillage, les régions non connexes du maillage le resteront. Il existe aussi des opérateurs qui modifient la topologie du maillage, soit en connectant des parties du maillage qui ne l étaient pas à l origine, soit en intervertissant des arêtes, ce qui peut rendre possible l application des opérateurs précédents dans certains cas.
54 Le traité de la réalité virtuelle Figure 2.17 : Suppression d une arête dans un maillage, méthode dite du edge collapse. Tous ces opérateurs ne s appliquent qu à des sommets intérieurs aux maillages. Dans le cas des maillages qui ne représentent pas des objets solides, les sommets frontières doivent être traités avec des précautions particulières : il s agit cette fois d approximer le contour d un polyèdre. Les algorithmes classiques peuvent être utilisés, par exemple en conservant le périmètre du polyèdre. 2.4.3.3 Métriques d erreur Dans ce paragraphe, nous abordons rapidemnt la notion d erreur ou de précision de la décimation. La classification des métriques d erreur se fait selon trois critères : les propriétés mesurées : topoologie, géométrie, attributs ; la portée de la métrique : l erreur est-elle évaluée d étape à étape, ou y-a-t-il une comparaison avec le maillage original? l interprétation : la métrique est-elle interprétable de façon intuitive? La première idée consiste à mesurer la distance qui sépare un maillage du maillage de l étape précédente [Schröder e.a., 1992]. Malheureusement cette étape est purement locale, ce qui rend l estimation d une erreur globale difficile. Cela ne permet pas de disposer d une borne supérieure de l erreur fiable et précise, comme la CAO le requiert par exemple. La plupart des métriques cherchent donc à évaluer une borne supérérieure garantie de l erreur. On peut utiliser pour ceci la distance de Hausdorff. La distance de Hausdorff entre deux formes A et B est définie comme étant le maximum des distances entre un point de A à son point le plus proche dans B. L inconvénient de la distance de Hausdorff (qui n est pas une distance au sens mathématique du terme) outre qu elle n est pas symétrique, est qu elle est particulièrement difficile à calculer. Une alternative consiste à calculer uniquement la distance entre les points du sommet initial aux triangles du maillagé décimé. On peut aussi utiliser une toute autre métrique, par exemple en cherchant la conservation du volume. Les approches modernes visent plutôt à définir des métriques de qualité qui incorporent les notions de précision géométrique des métriques d erreur, mais aussi des notions comme la qualité visuelle, l absence de rugosité des surfaces, les limites de courbure, la conservation de la topologie. Plus généralement, les critères sont liés à l application visée. 2.5 OPTIMISATION DES MODÈLES POUR LA RÉALITÉ VIRTUELLE Comme l ont montré les paragraphes précédents, nous disposons d une variété de modèles plus ou moins adaptés aux contraintes d une application de réalité virtuelle. La
Modèles géométriques des environnements virtuels 55 conversion entre ces modèles est bien entendu possible, mais celle-ce n est pas forcément suffisante : un modèle surfacique à base de triangles ou de polygones peut être trop complexe pour la machine qui va devoir le faire tourner. De ce fait, il existe aujourd hui un certain nombre de techniques qui visent à diminuer le nombre de triangles affichés à l écran. Certaines de ces techniques sont utilisables hors-ligne avant la simulation, d autres sont intégrables à l intérieur même de l application. D autres encore, comme les niveaux de détail, proposent des solutions mixtes, où une partie des calculs est effectuée hors-ligne, tandis que le reste se fait lors de la simulation. Toutes les techniques citées dans ce qui suit, visent à diminuer le nombre de triangles du modèle ou de la partie du modèle affichée à l écran. Bien sûr, les algorithmes décrits dans le paragraphe 2.4.3 font partie des techniques d optimisation des modèles. 2.5.1 TEXTURATION 2.5.1.1 Introduction Intuitivement, la texture d un objet représente son état de surface. En informatique graphique, c est une image plane qu on va plaquer sur une surface en trois dimensions, qui sera ensuite projetée sur l écran. Pour connaître la couleur d un point de l écran, il suffit donc de connaître la transformation géométrique qui permet de passer du plan de la texture à un point de la surface. Cette fonction constitue ce qu on appelle les coordonnées de texture. Reste alors à déterminer un algorithme de plaquage de texture. Les techniques de plaquage de texture diffèrent en fonction de la surface qui reçoit la texture. Idéalement, le plaquage de texture consiste à trouver un isomorphisme entre une image (surface plane définie par des coordonnées (u, v) [0, 1] 2 ) et une surface quelconque définie par une fonction f(x, y, z) = 0. Sur des surfaces planes, on se contente généralement d une double interpolation. Cet isomorphisme n existe évidemment pas pour tous les types de surface. La texturation d une sphère (par exemple pour représenter la terre) est impossible par des simples algorithmes d interpolation. 2.5.1.2 Avantages et inconvénients des textures L utilisation de textures permet de diminuer le nombre de polygones nécessaires pour représenter un objet. Reprenons l exemple de la terre du paragraphe précédent. Si on réalise cet objet sans texture, le nombre de polygones nécessaires pour représenter la nature du sol (terre, mer) à laquelle il faut ajouter les polygones représentant les nuages, la modélisation devient plus fastidieuse et requiert un nombre de polygones beaucoup plus important. Ici, quelques photos satellites et une sphère (décimée en quelques centaines de triangles) ont suffi à représenter l image de la figure 2.18. Les cartes graphiques 3D récentes incorporent en plus des algorithmes d affichage 3D pré-câblés et des fonctions de texturation des objets 3D. Les images constituant les textures sont stockées dans une mémoire spécifique appelée mémoire de texture embarquée sur la carte graphique. L accès est donc plus beaucoup plus rapide que pour la mémoire centrale et un processeur spécialisé se charge du plaquage de textures déchargeant alors d autant le processeur principal. En contrepartie, les textures fournissent
56 Le traité de la réalité virtuelle Figure 2.18 : Représentation de la terre à l aide de textures. naturellement une qualité d affichage inférieure (dans l exemple précédent, la perception ne s améliore pas si on se rapproche de la terre). L utilisation de cartes graphiques à mémoire spécialisée est une technique relativement couteuse puisque la mémoire utilisée a des temps de réponse extrêmement faibles : celle-ci est donc généralement disponible en quantité limitée. 2.5.2 NIVEAUX DE DÉTAILS La technique des niveaux de détail consiste à diminuer le nombre de polygones d un objet affiché à l écran en fonction de la façon dont il est perçu par l utilisateur : un objet lointain ou petit nécessite moins de détail qu un objet proche ou gros. Ceci est vrai pour deux raisons principales : le centre d intérêt de l image est généralement au centre de l écran et de taille respectable ; l image est constituée d une suite de pixels discrets, les détails dont la projection est inférieure à la taille du pixel ne sont donc pas représentables. L utilisation de niveaux de détails dans une application suppose de disposer d une part d un certain nombre de modélisations d un même objet à des précisions différentes et d une fonction de détermination du modèle à utiliser. Dans les fichiers de données 3D classiques représentant les modèles 3D par des arborescences, un nœud niveau de détail (Level Of Detail soit LOD en anglais) se présente comme sur la figure 2.19. S il est possible de modéliser trois fois le même objet à des précisions différentes, il est évidemment plus intéressant d effectuer une seule fois la modélisation avec une bonne précision et d utiliser ensuite des outils de décimation automatique. Ce calcul se fait classiquement hors-ligne, mais peut s effectuer aussi en ligne. La fonction de choix du niveau de modélisation à visualiser est calculée en ligne.
Modèles géométriques des environnements virtuels 57 LOD (2,40) Geode 1 45000t Geode 2 20000t Geode 3 1000t Figure 2.19 : Représentation des niveaux de détail dans l arborescence d un fichier de données 3D 2.5.2.1 Commande de transition Il existe plusieurs critères de transition d un niveau de détail à un autre. Le principal paramètre utilisé est bien sûr la distance entre la caméra virtuelle et l objet considéré. On utilise une table de décision qui donne le niveau de détail à utiliser en fonction de cette distance. Cette technique est insuffisante puisqu elle ne tient pas compte de la taille des objets : un gros objet éloigné peut nécessiter plus de détail qu un petit objet à proximité de la caméra. Plus généralement, le niveau de détail requis par un objet dépend de la taille à l écran de l objet plus que de sa taille réelle. L angle sous lequel est vu l objet a donc aussi son importance. En dehors de ces critères, il existe d autres données à prendre en compte. J. Nouvel [Nouvel, 1998] les explicite pour le cas du pilote de chasse dans son simulateur de vol : l importance relative de l objet dans son environnement : un arbre au milieu d une plaine peut constituer un repère de vol, alors qu il est parfaitement anodin au milieu d une forêt ; l intérêt fonctionnel de l objet : toujours pour le pilote de chasse, un avion présente un intérêt largement supérieur à un arbre. Cette technique, appelée «technique des aires d intérêt» peut s appliquer à l ensemble de la base de données 3D ; la vitesse linéaire de l objet par rapport à l observateur : plus l objet se déplace vite, moins ses détails sont visibles ; la vitesse angulaire du modèle : plus un objet tourne vite sur lui-même, moins ses détails seront visibles ; la position de l objet sur l écran : l œil est plus précis en son centre qu à sa périphérie, les objets situés dans l axe du regard nécessitent donc plus de détails. De plus, le champ de vision a tendance à se rétrécir avec la vitesse. On nuancera ce propos par le fait qu il n existe aujourd hui que des prototypes de dispositifs permettant d effectuer le suivi des mouvements de yeux ; la visibilité dans l environnement : les objets dans le brouillard disparaissent plus vite ; enfin, la charge du générateur d images : on peut choisir d éliminer des objets (ou d utiliser des niveaux de détail plus grossiers) lorsque la machine graphique n arrive plus à générer le nombre d images suffisant.
58 Le traité de la réalité virtuelle Ces critères sont bien sûr à adapter pour les autres applications, mais ils donnent les trois idées de base ; on réduit les détails en fonction de la distance entre l observateur et l objet, de la charge machine et de critères fonctionnels liés au domaines de l application. Une fois la décision de transition prise, il faut l appliquer au modèle. La solution la plus naturelle consiste à remplacer purement et simplement un modèle de l objet par un autre. Cette technique est évidemment très peu couteuse, mais peut provoquer des artefacts visuels gênants (clignotements des objets éloignés qui se rapprochent) lors du changement et perturber l attention de l utilisateur. A l inverse le fondu-enchaîné (ou blending) consiste à afficher les deux modèles en même temps en rendant l un de plus en plus transparent tandis que l autre devient de plus en opaque. Les artefacts disparaissent, mais au détriment du coût de calcul : il faut effectuer le rendu des deux modèles, mais aussi effectuer des calculs de transparence. Les techniques d interpolation 3D constituent alors un bon compromis entre la commutation et le blending : il s agit de déterminer hors-ligne des relations entre les sommets des niveaux de détail et d effectuer une interpolation entre ces sommets lors de la simulation. 2.5.2.2 Génération des niveaux de détail La méthode générale pour calculer des niveaux de détail se décompose en deux phases : 1. calcul de l importance : il s agit de calculer l intérêt d une sommet pour la reconnaissance du modèle auquel il appartient ; 2. construction : une fois que les sommets ont été triés en fonction de leur importance, on génère le nouveau niveau de détail lié à un seuil d importance, par exemple en éliminant les sommets dont l importance est faible. L approche par raffinement existe aussi dans la littérature (approche multi-résolution par ondelettes [Eck e.a., 1995]) où on construit le modèle complet à partir d une forme simple en ajoutant au fur et à mesure les sommets du modèle le plus raffiné. 2.6 RÉFÉRENCES BIBLIOGRAPHIQUES [Boissonnat e.a., 1995] J.-D. Boissonnat and M. Yvinec. Géométrie algorithmique. Ediscience International (1995). [Cozot, 1996] R. Cozot (1996). Environnement de simulation des systèmes physiques. Thèse de doctorat, Université de Rennes I, Rennes. [Donikian, 1997] S. Donikian. Multilevel modeling of virtual urban environments for behavioral animation. In Computer Animation (1997), pages 127 133, Genève, Suisse. [Donikian e.a., 1998] S. Donikian, G. Moreau, and G. Thomas (1998). Multimodal driving simulation in realistic urban environments. In S. G. Tzafestas and G. Schmidt, editors, Progress in System and Robot Analysis and Control. Springer-Verlag. [Dutreuil, 2001] J. Dutreuil (2001). Modélisation 3D et robotique médicale pour la chirurgie : développement d un protocole d implantologie dentaire assistée par robotique et étude d un cas clinique. Thèse de doctorat, Ecole des Mines de Paris, Paris. [Eck e.a., 1995] M. Eck, T. DeRose, T. Duchamp, H. Hoppe, M. Lounsbery, and W. Stuetzle. Multiresolution analysis of arbitrary meshes. In Computer Graphics (1995), pages 173 181.
Modèles géométriques des environnements virtuels 59 [Fuchs, 1996] [Gooch e.a., 2001] [Hoppe e.a., 1992] [Hoppe e.a., 1993] [Jackins e.a., 1980] [Kobbelt e.a., 2000] [Levoy e.a., 2000] [Lorensen e.a., 1987] [Mencl e.a., 1998] P. Fuchs. Les interfaces de la réalité virtuelle. Les Presses de l Ecole des Mines de Paris (1996). B. Gooch and A. Gooch. Non-photorealistic rendering. A.K. Peters, Natick, MA (2001). H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle. Surface reconstruction from unorganized points. In SIGGRAPH 92, volume 26 of Computer Graphics (1992), pages 71 78. H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle. Mesh optimization. In Computer Graphics (SIGGRAPH 93 Proceedings) (1993), pages 19 26. ACM. C. L. Jackins and S. L. Tanimoto. Oct-trees and their use in representing three-dimensional objects. Computer Graphics Image Processing, 14 :249 270 (1980). L. Kobbelt, S. Bischoff, K. Kähler, R. Schneider, M. Botsch, C. Rössl, and J. Vorsatz (2000). Geometric modeling based on polygonal meshes. Rapport de recherche MPI-I-2000-4-002, Max Planck Institut für Informatik, Sarrebruck, Allemagne. M. Levoy, S. Rusinkiewicz, M. Ginzton, J. Ginsberg, K. Pulli, D. Koller, S. Anderson, J. Sade, B. Curless, L. Pereira, J. Davis, and D. Fulk. The digital michelangelo project : 3d scanning of large statues. Proceedings of SIGGRAPH 2000, pages 131 144 (2000). W. E. Lorensen and H. E. Cline. Marching cubes : A high resolution 3d surface construction algorithm. Computer Graphics (Proceedings of SIGGRAPH 87), 21(4) :163 169 (1987), Held in Anaheim, California. R. Mencl and H. Müller. Interpolation and approximation of surfaces from three-dimensional scattered data points. In Eurographics State of The Art Report (1998), Lisbonne, Portugal. [Mortenson, 1985] M. Mortenson. Geometric Modeling. John Wiley & Sons (1985). [Nouvel, 1998] J. Nouvel (1998). Niveaux de détail dynamiquement adaptatifs pour objets et terrain. Thèse de doctorat, Université de Rennes I, Rennes. [Schröder e.a., 1992] W. Schröder, J. Zarge, and W. Lorensen. Decimation of triangle meshes. In Computer Graphics (SIGGRAPH 92 Proceedings), volume 26 (1992), pages 65 70. [Thomas, 1999] [Turk, 1992] G. Thomas (1999). Environnements virtuels urbains : modélisation des informations nécessaires à la simulation de piétons. Thèse de doctorat, Université de Rennes I, Rennes. G. Turk. Re-tiling polygonal surfaces. In Computer Graphics (SIG- GRAPH 92 Proceedings), volume 26 (1992), pages 289 298. Adresses des sites Web [http1] [http2] http ://www.sgi.com/software/volumizer http ://www.povray.org
60 Le traité de la réalité virtuelle
Deuxième partie Modèles pour les rendus sensori-moteurs
3 MODÈLES POUR LE RENDU VISUEL Bernard Péroche, Pascal Guitton et Mathias Paulin Les images en couleur de ce chapitre sont disponibles sur le site des Presses de l Ecole des mines de Paris à l adresse suivante : http ://www.ensmp.fr/presses/collections/scmathinfor/livres/lesimages.html. 3.1 LES RENDUS POUR LA RÉALITÉ VIRTUELLE 3.1.1 INTRODUCTION Quelque soit leur finalité (voir le volume sur les applications de ce traité), tous les systèmes de réalité virtuelle reposent sur la simulation d une tâche à l aide de moyens informatiques (calculs, affichage, interaction,...). Il peut s agir d une tâche d exploration, d apprentissage, de conception etc. Plus précisément, il s agit de fournir au cerveau de l utilisateur des informations issues de données numériques et simulant le contexte de la tâche à réaliser. Le premier sens concerné est la vue ; en effet, la grande majorité des informations utilisées par le cerveau humain pour percevoir son environnement est de nature visuelle. Il est donc naturel de s intéresser en premier lieu à la visualisation quand on développe une application de réalité virtuelle. On parlera de méthodes de rendu pour qualifier les algorithmes permettant de produire ces informations sensitives. Malheureusement, leur complexité de simulation constitue souvent un frein à leur mise en œuvre. L ensemble des informations calculées par les algorithmes de rendu (visuel, haptique, sonore) et prises en compte par le cerveau de l utilisateur lui fournit un sentiment dit d immersion. De la qualité de cette immersion dépend en premier lieu «l adhésion», la croyance de l utilisateur à l environnement que l application lui reproduit et par conséquent la qualité de la tâche qu il doit réaliser virtuellement. Par exemple, le cinéma grâce à des effets spéciaux toujours plus sophistiqués, propose des reproductions d environnements (réels ou virtuels) très fidèles mais le spectateur reste passif et ne peut intervenir sur le déroulement de l histoire ; on ne parle pas de réalité virtuelle alors que les techniques de rendu employées sont très proches. En d autres termes, une application de réalité virtuelle fournissant une excellente qualité de rendu mais des mécanismes d interaction très pauvres ne produira pas un bon sentiment d immersion à l utilisateur. Finalement, l immersion résulte de la qualité combinée des rendus et de l interaction. 3.1.2 RENDU TEMPS RÉEL Une autre différence fondamentale avec le cinéma découle de l attitude passive du spectateur : comme il n intervient pas dans le déroulement du film, il est «possible» de prévoir (scénario, storyboard) et donc de filmer et/ou calculer toutes les images avant la projection. En revanche, dans le cas de la réalité virtuelle il est nécessaire
64 Le traité de la réalité virtuelle de produire les rendus en fonction des demandes / actions de l utilisateur. Ces calculs doivent respecter une contrainte très forte : que leur durée ne soit pas perceptible. Dans le cas contraire, l utilisateur détecterait non plus une image animée mais une suite d images fixes saccadées ce qui rendrait très inconfortable son expérience. Quand la contrainte est respectée, on parle de rendu temps réel 1. Pour atteindre cet objectif de temps réel, deux facteurs sont à prendre en compte. Tout d abord, la latence des équipements notamment des capteurs de position et de direction. Il est en effet indispensable que le délai entre le mouvement de l utilisateur et la réception par l ordinateur de l information de changement de position soit le plus court possible. Dans le cas contraire, le décalage entre mouvement et répercussion sur l image produite rendrait très inconfortable la visualisation et donc l ensemble de l application (analogie avec le mal de mer). Ensuite, la fréquence minimum de calcul et surtout d affichage des images doit être de l ordre de 25 images par seconde (analogue à celle du cinéma). Pour des raisons de stabilité d image et donc de confort pour l utilisateur, on vise souvent des fréquences plus élevées, de l ordre de 50 à 80 Hz. Par conséquent, le système de réalité virtuelle dispose au plus de 1/25 e de seconde pour calculer et afficher une image. Cette durée très courte influe directement sur la complexité de la simulation du rendu et constitue le goulot d étranglement le plus important des applications de réalité virtuelle. C est pour cette raison que de nombreux travaux de recherche ont été entrepris pour diminuer le temps de calcul d une image. Une autre expression du même objectif est d augmenter, à temps de calcul constant, la complexité de la simulation soit géométriquement (augmenter le nombre de polygones traités par image), soit optiquement (améliorer la complexité du modèle de rendu). Parallèlement à ces recherches algorithmiques, les performances des systèmes de réalité virtuelle ont évolué «simplement» en bénéficiant des augmentations de puissance des processeurs et surtout des architectures graphiques spécialisées (carte 3D) engendrées principalement pour l industrie du jeu vidéo. 3.1.3 QUALITÉ ET PERCEPTION La qualité des informations numériques fournies au cerveau de l utilisateur est très difficile à évaluer puisque directement reliée aux mécanismes mis en jeu dans la perception humaine qui sont encore imparfaitement connus et qui surtout varient d un individu à l autre. Un ensemble de méthodes de rendu sera donc adapté à un groupe d utilisateurs et inefficace pour le groupe suivant. Il est donc utile de produire des critères d évaluation de la qualité du rendu en réalité virtuelle. Pendant longtemps, les informaticiens ont utilisé le seul critère du (photo)réalisme pour qualifier la qualité de leurs images numériques. Il s agissait de comparer la photographie d un objet ou d une scène avec l image de synthèse du même objet ; cette dernière était dite réaliste si un œil humain ne pouvait distinguer de différences entre les deux. Cette évaluation a guidé les chercheurs à développer des méthodes de plus en plus proches et inspirées des modèles utilisés par les physiciens. Toute l algorithmique de la radiosité, très en vogue dans les années 90, est le parfait exemple de ce rapproche- 1 Il faut noter que ce qualificatif de temps réel n a pas la même signification que dans l expression informatique temps réel, par exemple, où les contraintes de temps sont encore plus fortes.
Modèles pour le rendu visuel 65 ment. Avantage de cette voie : la mise au point de méthodes spécifiques produisant de très «belles» images ; inconvénient : en se rapprochant des modèles physiques et malgré les optimisations algorithmiques et logicielles, la mise en œuvre d outils très consommateurs de ressources machines (temps et mémoire). Ces méthodes restent donc très adaptées au calcul d images fixes mais ne respectent absolument pas les contraintes de temps réel induites par la réalité virtuelle. Une autre voie de recherche s est alors intéressée sur l exploitation des images produites : puisque le cerveau demeure l ultime «décideur», cherchons ce qu il est vraiment capable de distinguer. Informaticiens et spécialistes des sciences cognitives se sont alors rencontrés pour étudier les relations entre rendu et perception. En d autres termes, si une méthode de rendu consomme une grande partie du temps processeur pour modifier de façon infinitésimale la couleur de quelques pixels dont le détail ne sera pas perçu par l utilisateur, alors il faut changer la méthode. On passe donc d un unique critère de réalisme à un nouveau critère de crédibilité. Etablissons une analogie avec un voyageur qui doit se déplacer entre deux villes distantes d une centaine de kilomètres. S il utilise un avion de tourisme, alors une photographie aérienne lui est certainement très utile. S il emploie une automobile, alors une carte routière classique (échelle 1/50 000) est la plus adaptée pour la réalisation de sa tâche. Enfin, s il se déplace en VTT en passant par de petits sentiers et en minimisant les dénivelés à affronter, une carte géographique précise (échelle 1/5 000) lui permet d économiser ses efforts. Dans cet exemple, la photographie aérienne joue le rôle de l image photo-réaliste, les cartes le rôle de l image crédible et il apparaît clairement qu il n existe pas une meilleure représentation mais des supports plus adaptés à certains contextes de réalisation de tâche. Il existe de nombreux principes de rendu crédible dont certains sont très anciens. A travers les temps, de nombreux artistes ont inventé des styles de peinture autres que réalistes en jouant sur les motifs de base (pointillisme théorisé par Seurat), sur l abandon des détails de contour, de couleur ou de contraste (impressionnisme de Monet ou Renoir) ou sur la symbolique (cubisme initié par Picasso et Braque abandonnant notamment les règles de la perspective issues de la Renaissance). Plus récemment, les dessinateurs de bande dessinée ont inventé leurs propres styles, souvent regroupés sous l expression cartoon. Toutes ces écoles ont influencé les informaticiens qui en ont tiré des méthodes de rendu non photo-réaliste, dites aussi «rendu expressif». 3.2 MODÈLES D ÉCLAIRAGE ET D OMBRAGE 3.2.1 MODÉLISATION DE L APPARENCE Depuis des années, la synthèse d images s applique à définir des modèles de réflexion simulant le plus fidèlement possible la réponse d un matériau quelconque à une incidence lumineuse. Cependant, l interaction entre la lumière et la matière est un problème d une complexité élevée que l on ne sait pas modéliser dans sa totalité. Cette interaction peut être abordée à différents facteurs d échelle et avec des objectifs aussi divers que la simulation physique ou le rendu temps réel pour la réalité virtuelle. Cette interaction, au niveau microscopique, est fondamentalement expliquée par la mécanique quantique [Feynman, 1985]. Si l on se place à une échelle supérieure, échelle
66 Le traité de la réalité virtuelle mésoscopique, l interaction entre la lumière et la matière va pouvoir être complètement décrite par l électromagnétisme [Born e.a., 1984] et l optique géométrique. Au niveau macroscopique, cette interaction peut être définie par des fonctions de dimensions variables selon les phénomènes que l on souhaite prendre en compte. Ces fonctions macroscopiques définissent une famille de modèles exploitables en réalité virtuelle (figure 3.2) dont les plus représentatifs sont les modèles à base de textures et les modèles de BRDF. 3.2.1.1 Fonction de distribution de la réflectance bidirectionnelle D une manière intuitive la Fonction de Distribution de la Réflectance Bidirectionnelle (BRDF) décrit la réflexion d une onde lumineuse sur une surface. La définition radiométrique initiale fut introduite par Nicodemus [Nicodemus e.a., 1977]. Pour une direction incidente ou d éclairement ω i et une direction de réflexion ou d observation ω r 2, la BRDF est le rapport de la luminance réfléchie en un point x d une surface infinitésimale d aire da à l éclairement incident à celle-ci. En général on exprime la BRDF dans le repère local à la surface qui est formé par la normale au point x et deux vecteurs tangents orthogonaux (figure 3.1). Les directions sont repérées grâce à leurs coordonnées sphériques dans ce repère : f r (x, ω i, ω r, λ) = f r (x, θ i, φ i, θ r, φ r, λ) = dl r (x, θ r, φ r, λ) L i (x, θ i, φ i, λ)cos θ i dω i (3.1) Figure 3.1 : Repère local à la surface d un objet, z représente la normale locale La BRDF caractérise la réflexion des surfaces, c est-à-dire le comportement de matériaux qui réfléchissent une partie de l énergie lumineuse incidente et absorbent ou transmettent le reste. Elle est donc définie sur l hémisphère supérieur H 2 + entourant le point x. Néanmoins, en définissant de la même manière une Fonction de Distribution de la Transmittance Bidirectionnelle (BTDF) [Nicodemus e.a., 1977], il est possible de caractériser des matériaux transparents. La BTDF est définie sur l hémisphère inférieur 2 On parle encore de direction d entrée ω i et de direction de sortie ω r.
Modèles pour le rendu visuel 67 H 2 au point x. Les deux fonctions peuvent être regroupées et n en former qu une seule définie sur la sphère S 2 entourant le point x, et permettant de caractériser des matériaux semi-transparents. On parle alors de Fonction de Distribution de la Diffusion Bidirectionnelle (BSDF). On se rapproche ici du concept de fonction de phase qui définit le comportement d un milieu participant (composé non-surfacique de type gaz ou vapeur) vis-à-vis de la diffusion lumineuse [Glassner, 1995]. Si la BRDF caractérise les surfaces, la fonction de phase caractérise les volumes. Une approche de modélisation valable pour la BRDF pourrait naturellement s étendre à la BTDF, la BSDF ou la fonction de phase, si elle n est pas spécifique d un point de vue physique. Pour finir, il faut signaler qu en première approximation la BRDF suppose que l énergie lumineuse incidente à un point x d une surface est réfléchie depuis ce même point. En fait, une fraction de la lumière pénètre généralement à l intérieur de la matière, subit des réflexions au sein de la structure microscopique du matériau, et n est réfléchie en dehors de la surface qu en un point plus ou moins éloigné de x. Néanmoins, si l on considère ces phénomènes microscopiques comme étant parfaitement aléatoires, l approximation du point unique est macroscopiquement exacte car l énergie pénétrant dans la surface puis quittant celle-ci est distribuée de façon uniforme sur la surface. Pour une modélisation correcte de certains types de matériaux (translucides par exemple) une telle simplification est inadéquate. On introduit alors la Fonction de Distribution de la Réflectance Sous-Surfacique Bidirectionnelle (BSSRDF) [Nicodemus e.a., 1977] qui inclut ce décalage entre point incident et point de réflexion. Cette fonction n a été utilisée que récemment en synthèse d images du fait de sa complexité. On peut citer [Jensen e.a., 2001] [Jensen e.a., 2002] [Dorsey e.a., 1999] [Hanrahan e.a., 1993] [Pharr e.a., 2000] qui sont tous des travaux se rapportant au problème de la diffusion lumineuse sous la surface d un matériau. 8D BSSRDF Pas de diffusion sous surfacique Matériau homogène 6D Fonction de Texture Bidirectionelle (BTF) Fonction de distribution de la diffusion sous surfacique bidirectionelle (BSSDF) Eclairage fixe Visée fixe Position fixe Pas de diffusion sous surfacique 4D Champs de luminance Champs de réflectance Fonction de Distribution de la Réflectance Bidirectionelle (BRDF) Surface plate et diffuse BRDF isotrope 2D Texture 2D Figure 3.2 : Hiérarchie des fonctions de réflectance Classification des modèles de BRDF La recherche d une typologie des différents modèles de BRDF, c est-à-dire l étude de leurs caractéristiques et leur classification, a particulièrement intéressé les géophysiciens et moins le domaine de la synthèse d images. La première tentative fut celle de Goel [Goel, 1988] pour qui les modèles de BRDF se découpent en cinq familles selon qu ils sont empiriques ou reposent sur une caractérisation précise du matériaux. Cette classification étant trop générale, Roujean [Roujean, 1991] en a proposé une extension
68 Le traité de la réalité virtuelle qui, en voulant être trop précise, a perdu son sens au niveau du découpage. En effet, certains modèles peuvent appartenir à plusieurs familles simultanément. De plus, il est parfois délicat de procéder à leur classement, car quelques familles n ont pas réellement un sens physique pratique (comme les modèles mathématiques ou théoriques). Une description détaillée de cette typologie peut être trouvée dans [Claustres, 2000]. A partir de l expérience récente RAMI [Pinty e.a., 2001] qui propose une comparaison des modèles de transfert radiatif pour les surfaces terrestres permettant de simuler la BRDF de tels environnements, il est certainement possible d aboutir à une typologie plus actuelle résumée figure 3.3. Très ouverte comme celle de Goel, cette classification permet de bien comprendre le découpage des modèles par leur façon de procéder à la modélisation, sans tomber dans les travers de celle de Roujean comme une spécialisation excessive. Modèles Implicites Explicites Phénoménologiques Projectifs 1D 3D Figure 3.3 : Typologie synthétique modèles de BRDF Bien sûr, aucune typologie n est parfaite, et certains modèles hybrides utilisant différentes stratégies de modélisation seront toujours délicats à classer, mais on peut penser qu il est plus judicieux de se baser sur le processus de modélisation replacé dans son contexte d application plutôt que simplement sur son résultat (une formule de telle ou telle forme). Modélisation explicite : Un modèle explicite déduit ou calcule la BRDF à partir d une description explicite de la surface cible. Un tel modèle propose donc une compréhension des processus physiques sous-jacents au phénomène de la réflexion lumineuse en décrivant l interaction entre la lumière et la matière. En télédétection, et plus rarement en synthèse d images, on applique la théorie du transfert radiatif [Chandrasekhar, 1950] pour évaluer le flux énergétique réfléchi par la surface, mais la référence pour le choix de la théorie applicable est la longueur d onde du rayonnement. Pour les surfaces rugueuses, l interaction entre la lumière et la matière relève principalement de la diffraction par les micro- ou macro- structures de la surface [Deumié e.a., 1996]. Dans ce cas, les modèles explicites utilisés sont dérivés de l électromagnétisme. La complexité de la modélisation peut être réduite, car les calculs sont souvent prohibitifs, moyennant des hypothèses simplificatrices. En synthèse d images on parle aussi de goniomètres virtuels pour ces modèles, puisqu il s agit en fait de simuler la mesure d une BRDF, alors que les physiciens préfèrent plutôt le terme de laboratoire virtuel.
Modèles pour le rendu visuel 69 Modèles 1D : Historiquement, de nombreux modèles furent développés pour l étude de sources lumineuses naturelles comme les étoiles ou pour des applications lourdes et complexes comme l étude du climat. A cause des tailles importantes et du rôle prépondérant de la gravité, les atmosphères stellaires ou terrestres sont des milieux très étagés composés de couches, où les propriétés physiques varient considérablement plus selon le gradient de gravité (plan «vertical») que selon le plan support de la surface (plan «horizontal»). Pour ces milieux une représentation par couches (1D) est alors suffisante. Ces couches sont le plus souvent supposées disposées horizontalement, planes, infinies, et la répartition des éléments en leur sein homogène. On parle parfois de modèles turbides en télédétection. Modèles 3D : Dans le cas plus général d une surface composée d éléments hétérogènes, à des échelles spatiales très variables, il faut prendre en compte le phénomène de réflexion dans toute sa variabilité, c est à dire en 3D. Pour des surfaces aussi complexes, une approche analytique n est habituellement plus envisageable et des méthodes numériques comme celle de Monte Carlo ou des ordonnées discrètes sont employées. Les modèles 1D représentent en fait une sous-classes des modèles 3D. On parle aussi parfois de modèles volumiques en télédétection. Pour les surfaces rugueuses il est courant de parler de modèles 2D en ce sens que la surface décrite est une interface 2D sur laquelle a lieu le phénomène de réflexion. Cette famille de modèles n est pas exploitable en réalité virtuelle. Les temps de calculs et la complexité géométrique inhérents à la description explicite de la surface sont incompatibles avec le contraintes de rendu temps réel imposées par les applications interactives de la réalité virtuelle. Cependant, ces modèles peuvent être utilisés lors de phase de pré-calcul afin de fournir les données en entrée pour le calage des modèles implicites sur un matériaux donné. Modélisation implicite : Un modèle implicite ne fournit pas de représentation explicite de la surface pour laquelle l on désire étudier la BRDF. Il s agit d une approche pragmatique consistant à fournir une BRDF correcte mais sans compréhension réelle des processus physiques en jeu lors du phénomène de réflexion lumineuse. Le point commun de tous ces modèles est donc de nécessiter dans un contexte physique un jeu de mesures de BRDF comme point de départ. Modèles phénoménologiques : Un modèle phénoménologique fournit une expression explicite de la BRDF (mais sans description explicite de la surface étudiée). Il s agit d une fonction mathématique dépendant d un ou de plusieurs paramètres. Ces paramètres peuvent être fixés arbitrairement (approche directe), mais sont généralement évalués sur un jeu de mesures (approche inverse 3 ). On peut aussi parler pour ces modèles, d une approche analytique au sens mathématique du terme puisqu ils fournissent au final une équation de la BRDF. L approche inverse sur ces modèles révèle un problème intéressant. Il est en effet possible de les utiliser, non pas pour prédire une BRDF en fonction de leurs 3 On parle aussi de calage.
70 Le traité de la réalité virtuelle paramètres physiques, mais plutôt pour déduire ceux-ci grâce à une mesure de la BRDF. Dans de nombreux cas la mesure des paramètres physiques est en effet excessivement difficile, voire impossible, à mettre en œuvre. On préférera alors une mesure de BRDF (même limitée) qui peut être beaucoup plus simple à réaliser. Lorsqu il est possible d utiliser conjointement l approche directe et inverse, on se trouve en présence d un procédé de validation très puissant [Verstraete e.a., 1990]. La stratégie d élaboration d un tel modèle peut être statistique ou purement empirique. L étude statistique rend compte du phénomène global observé à une échelle plus élevée que celle de la description de la surface. La surface y est représentée par une distribution de composants géométriques simples : facettes, sphères, cylindres, etc. L approche empirique consiste en un calage statistique effectué sur une série d observations. Cette démarche s inscrit dans un cadre de validité délimité par les données initiales (par exemple les couverts végétaux ou les surfaces désertiques). L application de ces modèles à des situations variables ou nouvelles par rapport à celles ayant servi à les définir est irréaliste. Nous trouvons dans cette famille les principaux modèles utilisés en synthèse d images et en réalité virtuelle parmis lesquels nous pouvons citer les modèles de Lambert pour les matériaux diffus ou les modèles de Phong [Phong, 1975], de Blinn [Blinn, 1977] de Cook et Torrance [Cook e.a., 1982], de Lewis [Lewis, 1993] et d Ashikhmin [Ashikhmin e.a., 2000] pour des matériaux plus réalistes. Modèles projectifs : Les modèles projectifs s attachent à utiliser des méthodes mathématiques numériques efficaces pour représenter le jeu de mesures de la BRDF d une manière optimale. Pour cela, ils le transforment dans un autre espace pour rendre sa manipulation plus efficace en terme de mémoire et/ou de performance. Généralement il s agit d une projection sur une base de fonctions arbitrairement choisie. Cette approche consiste en une pure abstraction mathématique de la BRDF. Il s ensuit que les paramètres du modèle n ont aucun sens physique ou intuitif. C est-à-dire qu il est impossible d utiliser un tel modèle de façon directe. On notera que très souvent un modèle projectif est utilisé conjointement avec un goniomètre virtuel. En effet, l évaluation de la réponse de la surface est très coûteuse, elle est donc pré-calculée une fois pour toutes et stockée ensuite de la façon la plus optimale possible. Cette famille de modèles est actuellement de plus en plus utilisée en synthèse d images et en réalité virtuelle puisqu ils permettent de prendre en compte de manière très efficace des matériaux complexes mesurés et se prêtent bien à l encodage du résultat de modèles d illumination globale que l on verra dans la section 3.2.2. Nous pouvons citer, entre autres, les travaux McCool [McCool e.a., 2001] et de Kautz [Kautz e.a., 2002] [Kautz e.a., 1999] sur la factorisation de la BRDF. 3.2.1.2 Textures et Fonctions de texture bidirectionnelles Les fonctions de réflectance bidirectionnelles caractérisent le comportement d un matériau vis-à-vis d une lumière incidente. Cependant, ces fonctions sont indépendantes de la position sur la surface et sont donc limitées à la représentation de matériaux ho-
Modèles pour le rendu visuel 71 mogènes. La modélisation d un matériau hétérogène, plus conforme à ce que l on peut trouver dans la réalité, nécessite de définir une variation de la BRDF sur la surface. Cette variation peut se représenter de différentes manières. La première approche, la plus triviale, consiste à représenter explicitement cette variation de propriétés de matériaux par une segmentation de la géométrie. Cette approche augmente considérablement le coût de traitement géométrique qui devient prohibitif dès que l on souhaite représenter des mésostructures sur un matériau relativement homogène (un pull de laine tricoté par exemple). La modélisation de ces propriétés est réalisée efficacement par une carte 2D d informations appelée texture, très efficace pour le rendu temps réel, construite sur une paramétrisation de la surface des objets. Textures diffuses Lorsque l on parle de texture, la première représentation que l on s en fait correspond à une variation de la couleur le long de la surface. Ainsi, une texture peut être vue comme une carte de couleurs définie sur la surface de l objet. Une telle définition, introduite par Catmull en 1974, permet de représenter de manière compacte des détails de couleurs précis et offre deux avantages importants en réalité virtuelle concernant la création et l exploitation de ce modèle. Afin d être exploitable dans une application de réalité virtuelle, toute modélisation de l apparence doit pouvoir être facilement créée à partir d une information réelle. Les textures 2D, dans ce domaine, représentent le modèle le plus adapté à la création de contenu. En effet, une simple photographie d un objet réel permet de définir une texture à appliquer sur un objet virtuel. Les corrections nécessaires pour améliorer l apparence finale concernant l égalisation de la luminance, l accentuation des contrastes ou tout autre filtre correctif sont disponibles dans la chaîne classique de traitement des images 2D. Si l apparence que l on souhaite modéliser n existe pas dans la réalité, il est alors possible de la créer de toute pièce à l aide d outils de dessin et de peinture classique. Les fonctions de texture bidirectionnelles L utilisation des textures diffuses, bien que très largement répandue et visuellement convaincante, ne permet pas d obtenir la meilleure qualité perceptuelle possible pour les images en réalité virtuelle. Cette approximation découle directement de la notion de BRDF vue précédemment et approchée par une fonction constante dans le cas des textures diffuses. Si l on veut augmenter le réalisme des images produites, il faut alors augmenter la complexité des informations véhiculées par la texture afin de représenter au mieux toutes les subtilités du matériaux. Ainsi, les fonctions de texture bidirectionnelle (BTF pour Bidirectionnal Texture Functions) introduites par Dana en 1999 [Dana e.a., 1999] sont des textures 6D qui étendent la représentation classique d une texture 2D par adjonction de la dépendance aux directions de vue et de lumière. Elles définissent ainsi une BRDF variable par texel et permettent de représenter de nombreux effets subtils d éclairage à la surface des objets et d améliorer significativement la qualité des images (figure 3.4).
72 Le traité de la réalité virtuelle Figure 3.4 : A gauche, surface rendue par texture diffuse. A droite, le même matériau rendu par BTF La modélisation de l apparence par la méthode des BTF est donc très similaire à l approche par texture diffuse et repose sur les étapes suivantes : l acquisition ; la compression ; le rendu. Cependant, pour les BTF, l étape de compression (optionnelle dans l approche par textures 2D) devient obligatoire. En effet, le volume de données à traiter est trop important pour espérer manipuler, avec des temps de calcul acceptables, une BTF non compressée. Acquisition de BTF : Acquérir une BTF consiste à mesurer un intervalle à 6 dimensions de la fonction de transfert de la lumière sur une surface S : BTF λ (x, θ i, φ i, θ r, φ r ) := BSSRDF λ (x i, x r, θ i, φ i, θ r, φ r )dx i S Une des méthodes d acquisition de BTF consiste à capturer la géométrie d un petit objet et ses propriétés de réflexion, paramétrées sur la surface c est-à-dire sur la BRDF variant spatialement. Furukawa et al. [Furukawa e.a., 2002] et Lensch et al. [Lensch e.a., 2003] utilisent un laser pour acquérir la géométrie de l objet et capturent plusieurs images en faisant varier les directions de vue et de lumière. Furukawa et al. plaquent les images sur les triangles du modèle et compressent les données reparamétrées en utilisant un produit de tenseurs. Lensch et al. utilisent une procédure par regroupement, pour pallier l insuffisance de l échantillonnage. Cependant, de telles approches fournissent une modélisation de l apparence dépendante de la géométrie capturée et empêche donc tout réutilisation sur d autres objets. Pour pallier cette limitation, une alternative aux approches précédentes est de capturer l apparence d un matériau opaque, indépendamment de sa géométrie en capturant sa BTF sur un échantillon plan. La BTF est acquise en capturant plusieurs images de l échantillon, suivant des directions de vue et de lumière différentes. Les images ainsi acquises peuvent être utilisées à la place de textures 2D, et plaquées sur des géométries arbitraires.
Modèles pour le rendu visuel 73 Compression de BTF : Une BTF mesurée est une collection de centaines d images difficilement exploitables pour la synthèse de texture et le rendu (une BTF de 256x256 peut occuper plusieurs centaines de Mo). Dans l optique d un rendu temps réel, il est primordial de compresser ces données. Cette étape doit conserver le plus possible les caractéristiques de la BTF et offrir une décompression rapide. Un grand nombre de méthodes de compression interprètent une BTF comme une collection de textures discrètes ou comme une «BRDF apparente variant spatialement» (ABRDF [Wong e.a., 1997]). A noter que dans cette approche, les ABRDF ne sont pas physiquement plausibles car non réciproques, du fait qu elles prennent en compte la diffusion d autres parties de la surface. La compression la plus naturelle est d approcher la BTF en chaque pixel, par un modèle de BRDF. BTF (x, ρ r, ρ i ) f r,x (ω i ω r ) (3.2) Les modèles de BRDF f r (ω i ω r ) doivent cependant être suffisamment rapides à évaluer pour autoriser un rendu avec des temps de calcul acceptables. Ainsi, McAllister et al [McAllister e.a., 2002] proposent une méthode qui se base sur l approximation du modèle de BRDF de Lafortune [Lafortune e.a., 1997], fondé sur une somme de lobes. f r (ω i ω r ) = ρ d + j ρ s,j.s j (ω i, ω r ) (3.3) Les paramètres de chaque lobe j et l albédo ρ d sont obtenus par optimisation non linéaire du jeu de mesures. Cependant, ce modèle ne permet pas de représenter les ABRDF pouvant avoir des effets d auto-ombrage et d auto-occultation caractéristiques des phénomènes lumineux liés à la mésogéométrie de la surface. Afin de résoudre ce problème, Daubert [Daubert e.a., 2001] propose de rajouter à ce modèle un terme, T x (ω r ), qui modélise l auto-occultation du matériau. La BTF est alors évaluée comme ci-dessous : BTF (x, ω r, ω i ) T x (ω r ) ρ d,x + j s x,j (ω r, ω i ) (3.4) Le coût de stockage de cette approche est cependant bien plus important que dans la méthode de McAllister et son utilisation en rendu temps réel est limitée. Une autre approche permettant de prendre en compte ces effets lumineux repose sur la notion de fonction résiduelle. Après approximation de la BRDF par le modèle de Lafortune selon la méthode de McAllister, nous disposons d un ensemble de mesures (la BTF) auxquelles il est possible de se référer afin de calculer l erreur d approximation. Ce résidu peut être considéré comme étant ce qu il reste à approcher et peut donc représenter le résultat d une fonction résiduelle. L objectif de cette approche est d estimer cette fonction afin de prendre en compte les différents effets du matériau non matérialisés dans la fonction de réflectance bidirectionnelle. La BTF est alors approchée par l équation ci-dessous : BTF (x, ω r, ω i ) f r,x (ω r, ω i ) + δ (x, ω r, ω i ) (3.5)
74 Le traité de la réalité virtuelle avec : f r,x (ω r, ω i ) = ρ d + j ρ s,j (ω t r C j ω i ) nj : BRDF de Lafortune δ (x, ω r, ω i ) = BTF (x, ω r, ω i ) f r,x (ω r, ω i ) : résidu de l approximation précédente Cette fonction résiduelle peut alors être efficacement modélisée par une analogie à la composante spéculaire de Blinn. δ (x, ω r, ω i ) = s(x) H (3.6) Ici, H représente la bissectrice entre ω r et ω i et s le terme que l on désire approcher. Cette fonction résiduelle présente plusieurs avantages. D une part, son évaluation est très rapide puisque seul un produit scalaire est nécessaire, d autre part, le terme s que l on approche est un vecteur à 3 composantes et ne nécessite donc qu une texture 2D pour être stocké. La modélisation de la BRDF correspond donc au calcul, à partir des échantillons mesurés, d un ensemble de textures 2D encodant les différents paramètres du modèle. Cette formulation permet donc à cette méthode de s intégrer tout naturellement dans une méthode de rendu temps réel. 3.2.2 MODÉLISATION DE L ÉCLAIRAGE Le rendu final d une scène en réalité virtuelle consiste formellement à résoudre l équation du rendu [Kajiya, 1986] : L r (x, ω r, λ) = L e (x, ω r, λ) + f r (x, ω i, ω r, λ)l i (ω i, λ)cosθ i dω i (3.7) Ω i Figure 3.5 : Géométrie associée à la formulation directionnelle de l équation du rendu L équation du rendu définit la luminance en un point comme la somme de l émission propre en ce point et de la réflection selon la BRDF de la luminance incidente sur l hémisphère supérieur Ω i = H+ 2. Cette expression considère que les surfaces sont opaques, mais la même formulation peut être obtenue avec des surfaces transparentes en remplaçant la BRDF par la BTDF et l hémisphère supérieur d intégration par l hémisphère inférieur. De plus, cette équation n est pas la plus générale possible. Elle
Modèles pour le rendu visuel 75 suppose la lumière réfléchie ponctuellement par les surfaces, théoriquement il faudrait utiliser la BSSRDF pour être plus général (diffusion interne), et intégrer sur la sphère [Veach, 1997]. A cette formulation directionnelle de l équation du rendu, on peut associer une formulation alternative que l on peut qualifier de surfacique. En effet, la luminance incidente à une surface en un point x est en fait la luminance émise ou réfléchie vers x par les autres surfaces de la scène visibles depuis x. On évalue donc l énergie totale provenant de tous les points x formant les surfaces de la scène. D où la formulation équivalente de l équation du rendu : L r (x, ω r, λ) = L e (x, ω r, λ) + f r (x, ω i, ω r, λ)l i (x cosθ r, ω i, λ)cos θ i x x 2dA x (3.8) Cette expression fait apparaître un terme purement géométrique évalué entre les deux points x et x, fonction de l angle solide sustenté par da en x : g(x, x ) = dω i cosθ i = cosθ r cosθ i x x 2 (3.9) Afin de prendre en compte les phénomènes d occlusion dans la scène, on introduit la fonction de visibilité v entre les points x et x, valant un s ils sont directement visibles et zéro sinon. L expression surfacique finale s écrit donc : L r (x, ω r, λ) = L e (x, ω r, λ) + x f r (x, ω i, ω r, λ)l i (x, ω i, λ)g(x, x )v(x, x )da (3.10) Figure 3.6 : Géométrie associée à la formulation surfacique de l équation du rendu Ces deux versions de l équation du rendu sont équivalentes mais la première est plus adaptée à une approche orientée image car on connaît les directions intéressantes grâce à la position du capteur. La seconde quant à elle s adapte naturellement à l approche scène car il faut passer en revue toutes les possibilités existantes de recevoir de l énergie, c est-à-dire toutes les surfaces de la scène. Le choix de l une ou de l autre approche pour la simulation de l éclairage se fera donc en fonction de l espace dans lequel on souhaite calculer cet éclairage. Le calcul de l éclairage dans l espace image est la méthode la plus utilisée en réalité virtuelle. Plusieurs raisons viennent expliquer ce choix. D une part, cette approche est compatible avec les API graphiques pour le rendu temps réel que sont
76 Le traité de la réalité virtuelle OpenGL[Segal e.a., 2004] et DirectX. D autre part, comme nous le verrons dans la section 3.2.2.2, de nombreuses simplifications peuvent être faites afin d offrir la meilleure qualité d image en temps réel. Le calcul de l éclairage dans l espace scène est peu utilisé en réalité virtuelle et apparaît souvent comme un prétraitement de calcul de l illumination globale dans les scènes statiques et dans des applications de type walkthrough. Cette formulation surfacique, comme nous le verrons dans la section 3.2.2.1, peut ainsi être directement utilisée dans les algorithmes de radiosité par exemple ou dans les méthodes à base d estimation de densité afin de proposer une reconstruction de l éclairage dans l espace scène, directement sur les maillages ou sous forme de textures. 3.2.2.1 Illumination globale et réalité virtuelle Historiquement la méthode de radiosité est la première approche physiquement réaliste pour tenter une résolution de l équation du rendu [Goral e.a., 1984]. Des hypothèses fortes ont été nécessaires pour simplifier considérablement le problème : sources lumineuses isotropes et homogènes surfaces parfaitement diffuses Ainsi la composante directionnelle de l équation du rendu est supprimée : L r (x) = L e (x) + x f r (x)l i (x )g(x, x )v(x, x )da De plus, on remarque que pour une surface diffuse, la luminance est en fait égale à la radiosité divisée par un facteur π (dû à l intégration sur toutes les directions). Par convention on rappelle que l énergie émise par unité d aire est appelée exitance et non pas radiosité (on notera E). De même la BRDF est égale à la réflectance divisée par un facteur π, donc constante, elle peut être sortie de l intégrale, d où pour une longueur d onde fixée : B(x) = E(x) + ρ(x) π x B(x )g(x, x )v(x, x )da (3.11) En regroupant g, v et le facteur π on obtient le noyau géométrique : K(x, x ) = g(x, x )v(x, x ) π (3.12) puis l équation de la radiosité : B(x) = E(x) + ρ(x) B(x )K(x, x )da (3.13) x Cette équation est généralement résolue par la méthode des éléments finis et plus particulièrement par la méthode de Galerkin (base de fonctions orthogonales). La méthode
Modèles pour le rendu visuel 77 des éléments finis [Zienkiewicz, 1989] représente une fonction complexe f en subdivisant son domaine en n éléments e i sur lesquels elle est approchée par une somme linéaire (projection sur une base de fonctions {γ j }) : f(x) f(x) = fj i γi j (x) i j Cette technique a été appliquée pour projeter la fonction de radiosité [Heckbert, 1993] [Bekaert e.a., 1996]. En substituant l approximation à B dans l équation 3.13 on obtient un système d équations linéaires : B i j = Ei j + i,j K i,i j,j Bi j (3.14) Les Ej i étant les coefficients de projection de E(x) : Ej i = γj(x)e(x)da i (3.15) x Et K i,i j,j le facteur de forme généralisé : K i,i j,j = γj(x) i ρ(x)k(x, x )γ i j (x )dada (3.16) x x Les étapes de formulation et de résolution d un problème de radiosité générique consistent donc à : subdiviser les surfaces de la scène en éléments A i ; choisir une base de fonctions γ pour la projection ; calculer le facteur de forme généralisé K entre chaque élément de la scène ; résoudre le système d équations linéaires (inconnus = coefficients de projection) ; reconstruire la fonction de radiosité B grâce aux coefficients obtenus ; déduire une image à partir de la fonction de radiosité dans la scène. Le problème principal de la radiosité par éléments finis est sa complexité en temps et en mémoire. Pour n e éléments et des fonctions d ordre n o, la résolution par inversion matricielle directe a une complexité en O(n 3 ) avec n = n e n o. En fait cette matrice est creuse et des méthodes plus performantes peuvent être utilisées [Gortler e.a., 1993a] : méthode de Gauss-Seidel ou relaxation de Southwell par exemple. Leur complexité calculatoire est O(n 2 ), et O(n 2 ) (respectivement O(n)) en mémoire. A cause des nombreuses discontinuités de la radiosité (dues notamment aux ombres), des fonctions d ordre supérieur sont rarement utilisées. Mieux vaut généralement discrétiser plus finement les surfaces et réduire l ordre des fonctions utilisées. C est pourquoi on a privilégié des fonctions constantes sur les éléments [Goral e.a., 1984], simplifiant encore plus l équation de radiosité : B i = E i + ρ i FjB i j (3.17) avec le facteur de forme simple : Fj i = 1 K(x, x )dada = 1 A x x A i j A i A j K(x, x )da i da j (3.18)
78 Le traité de la réalité virtuelle La méthode de radiosité a connu de nombreuses améliorations depuis son introduction en synthèse d images. La résolution hiérarchique [Hanrahan e.a., 1991] diminue la complexité en effectuant une résolution à différents niveaux, ce qui revient à une approche multirésolution utilisant des fonctions d ondelettes pour la projection de la radiosité [Gortler e.a., 1993b]. En effet, lorsque les surfaces sont lointaines, une subdivision grossière suffit pour obtenir de bons résultats, alors que pour des surfaces proches une subdivision plus fine sera nécessaire. Smits [Smits e.a., 1994] et Sillion [Sillion, 1994] proposèrent une extension de ce travail en rassemblant les surfaces par groupes (cluster). Selon la précision nécessaire on calculera directement les transferts énergétiques entre groupes ou entre groupes et surfaces. Reste toujours en suspens la question de la constitution des groupes de surfaces ou d objets de façon efficace. La méthode de Monte Carlo a aussi été employée pour résoudre différemment l équation de radiosité [Bekaert, 1999]. Pour finir, l intégration de modèles de BRDF plus complexes est possible [Immel e.a., 1986] [Sillion e.a., 1991] [Gortler e.a., 1993b] [Christensen e.a., 1996] [Stamminger e.a., 1998] mais de simples surfaces courbes brillantes ne sont pas gérées de façon correcte. Un panorama complet et détaillé des méthodes de radiosité se trouve dans [Cohen e.a., 1993] [Sillion e.a., 1994] [Stamminger, 2000]. Les algorithmes de radiosité, bien que très complexes à mettre en œuvre, sont très efficaces en terme de qualité d image si la scène est statique. Le résultat de la simulation, obtenu par prétraitement dans l espace scène et stocké directement sur le maillage ou sous forme de textures 2D, permet de développer des applications de réalité virtuelle de type walkthrough dans des environnements réalistes. Les applications architecturales sont un bon exemple d applications de réalité virtuelle pour lesquelles une approche par radiosité est envisageable. Si la dynamique de la scène et les possibilités d interaction sont limitées à quelques objets bien identifiés, il est de plus possible de combiner une simulation de l éclairage par radiosité pour la partie statique de la scène avec une simulation en illumination locale, en temps réel, sur les objets dynamiques. 3.2.2.2 Illumination locale et réalité virtuelle Bien que la qualité des images produites par une méthode d illumination globale soit très intéressante pour la réalité virtuelle par l immersion visuelle qu elle permet, elle n est pour le moment pas accessible pour des applications générales. Le coût de calcul de telles méthodes d éclairage et le réalisme physique nécessaire à la description de la scène sont les deux principaux freins à l utilisation des méthodes d illumination globales. Aussi, de nombreuses approches plus locales ont été développées. Ces méthodes reposent principalement sur une approche perceptuelle du rendu en réalité virtuelle et cherchent à ne calculer que les informations nécessaires à la compréhension de la scène. Ainsi, ces méthodes sont très souvent basées «image», tant au niveau de l espace de calcul que de la représentation des données de la simulation. En partant de l équation générale du rendu 3.7, nous pouvons en dériver une expression simplifiée adaptée au rendu temps réel. Pour cela, plusieurs hypothèses sont émises : sources de lumière ponctuelles et en nombre réduit ; spectre échantillonné en Rouge, Vert, Bleu ; éclairage direct calculé explicitement ; éclairage indirect approché.
Modèles pour le rendu visuel 79 Ces hypothèses permettent de modéliser l éclairage pour les applications de rendu temps réel par l équation où L r (x, ω r ) rgb = + N l l brdf(x, ω l, ω r ) rgb g(x, l)li l rgb (ω l) rgb Ω brdf(x, ω i, ω r ) rgb Li(ω i ) rgb cos(θ i )dω i (3.19) N l nombre de sources lumineuses potentiellement visibles de x ; g(x, l) fonction de visibilité entre la source l et le point x ; Li(ω) luminance incidente dans la direction ω ; Ω... terme d illumination globale ; Ω espace visible depuis le point x. Le terme d illumination globale de cette équation peut être modélisé ou calculé de différentes manières en fonction des contraintes applicatives et du temps de calcul accordé à la phase de rendu. Ce terme a aussi une influence considérable sur la qualité des images obtenues. La représentation la plus grossière de ce terme, mais aussi la moins coûteuse en ressources, est de fixer une couleur ambiante constante. On obtient alors l expression du modèle d éclairage utilisé par les API de rendu temps réel OpenGL [Segal e.a., 2004] et DirectX. Cette approximation, de par sa simplicité, est la plus utilisée dans les applications existantes de réalité virtuelle. Les évolutions de la puissance des processeurs centraux et des processeurs graphiques ont rapidement permis d étendre la complexité de la représentation de ce terme d illumination globale. Les premières approches reposaient sur l utilisation de textures d environnement [Heckbert, 1990] [Zhukov e.a., 1998]. Ces dernières permettent de représenter une distribution directionnelle de couleur et permettent, à condition que l environnement soit relativement éloigné par rapport à l objet éclairé, de simuler l illumination de l objet par l environnement. La notion de texture d environnement peut aussi être utilisée pour représenter toute fonction sur une discrétisation de l espace des directions. Ces textures d environnement peuvent ainsi être issues d une longue étape de précalcul [Kristensen e.a., 2005] [Sloan e.a., 2003] [Sloan e.a., 2002], calculées rapidement par des méthodes d illumination globales simplifiées [Larsen e.a., 2004] ou être fixées une fois pour toutes au démarrage de l application. L illumination directe, responsable de la partie la plus perceptible de l éclairage d une scène, est elle aussi modélisée de différentes manières en fonction des applications visées. Les modèles couvrent alors une large gamme d effets, depuis les approches non réalistes, [Winkenbach e.a., 1994] [Decaudin, 1996] [Kowalski e.a., 1999] [Eissele, 2003], visant à faire ressortir une impression globale de l objet plutôt qu une représentation fidèle aux modèles plus évolués reposant sur des BRDF complexes, [Heidrich e.a., 1999] [Cook e.a., 1982] [Blinn, 1977] [Kautz e.a., 1999]. De nombreuses approches de rendu temps réel représentent les BRDF par un ensemble de textures 2D [McCool e.a., 2001][Kautz e.a., 2002]. Cette représentation des BRDF, et plus généralement des fonctions d illumination de la scène, permet d exploiter au mieux les performances brutes des processeurs graphiques, de distribuer les traitements
80 Le traité de la réalité virtuelle entre le processeur central et les différents étages du pipeline graphique et ainsi, de maintenir un temps de calcul minimal tout en assurant une qualité d image correspondant aux besoins applicatifs. Les différents modèles que nous venons de voir reposent initialement sur une modélisation et une reproduction du phénomène physique de génération d une image et de l acquisition de celle-ci par un capteur idéal. Cependant, il ne faut pas oublier que dans le cadre de la réalité virtuelle, ce capteur est la plupart du temps l œil humain 4. Il devient alors important, si l on souhaite développer le rendu réaliste temps réel en réalité virtuelle de se poser la question du rendement des modèles développés par rapport à leur perception. L évaluation des modèles en réalité virtuelle ne se faisant plus en termes physique mais en terme perceptuels, il est alors important d étudier les couplages possibles entre les modèles d éclairage, de perception et de restitution afin de ne calculer que ce qui sera perçu et de le calculer efficacement. 3.3 RENDU ET PERCEPTION L objectif principal de la production d images de synthèse est la visualisation de cellesci sur un dispositif adéquat. Il est donc naturel de vouloir prendre en compte le système visuel humain, et notamment ses limites, quand on veut calculer une ou plusieurs images de synthèse. Dans ce paragraphe, nous allons étudier deux contextes dans lesquels la perception peut être prise en compte : l utilisation de modèles de vision pour le calcul du rendu et la reproduction de tons. 3.3.1 MODÈLES DE VISION ET CALCULS DE RENDU 3.3.1.1 Modèles de vision Par modèle de vision, nous entendons un algorithme qui prend en entrée une image et qui renvoie l interprétation qu en fait le système visuel humain au niveau du cortex. Il s agit donc d un algorithme qui simule les traitements effectués dans la rétine et les voies nerveuses. Il n existe pas beaucoup de tels modèles dans la littérature. Nous allons en présenter rapidement trois, qui nous paraissent les plus caractéristiques de ce qui est souhaitable en informatique graphique et en réalité virtuelle. Le «Visual Differences Predictor» de Daly. Ce modèle [Daly, 1993], qui est achromatique, comporte trois étapes : une simulation de l adaptation en luminance des cellules rétiniennes à l aide d une courbe expérimentale sur les seuils de perception ; une prise en compte de la vision spatiale à l aide d une fonction de sensibilité au contraste bi-dimensionnelle ; 4 La réalité virtuelle est parfois utilisée pour entraîner des système de télédétection à base de capteurs infrarouge. Dans ce cas là, l environnement logiciel est légèrement adapté afin de prendre en compte les plages spectrales et la sensibilité du capteur mais les modèles restent globalement les mêmes.
Modèles pour le rendu visuel 81 une simulation des traitements corticaux, avec une décomposition spatiale orientée et une fonction de masquage. Ce modèle a été introduit en fait pour prédire la différence de visibilité entre deux images. Il a été évalué par Myszkowski [Myszkowski, 1998]. Il s avère performant, bien que ne prenant pas en compte la vision des couleurs. La décomposition fréquentielle orientée demande des temps de calcul non négligeables et une consommation mémoire importante. Le «Visual Discrimant Model» de Lubin. Ce modèle [Lubin, 1995] cherche à simuler l acquisition de l information lumineuse et les traitements appliqués à celle-ci, depuis l oeil jusqu aux traitements corticaux de bas niveau. Ce modèle fonctionne en quatre étapes : une simulation de l optique de l oeil et de la rétine par filtrage de l image et échantillonnage à 120 pixels par degré ; un calcul des contrastes locaux par décomposition laplacienne à 7 niveaux de l image, puis, pour chaque pixel de niveau i, division par la valeur du même pixel de niveau (i + 1) ; une prise en compte de l orientation (par convolution avec 4 paires de filtres orientés), puis calcul d une énergie de contraste ; une phase de transduction : chaque énergie de contraste est normalisée par le carré du seuil de détection de contraste pour la fréquence associée au niveau courant de la pyramide, puis est multipliée par une fonction de type sigmoïde (le transducteur). Ce modèle nécessite moins de calibration que celui de Daly et sa structure est plus logique, d un point de vue physiologique. Le modèle est achromatique et la décomposition en 28 canaux est coûteuse. Le «Multiscale Model of Adaptation and Spatial Vision» de Pattanaik et al. Ce modèle [Pattanaik e.a., 1998] reproduit toutes les étapes du cheminement d un stimulus lumineux à l intérieur du système visuel humain. Il travaille en cinq étapes : traitement préalable de l image : simulation de la dispersion et de la diffraction de la lumière dans le globe occulaire, puis obtention des quatre signaux transmis par les cônes et les bâtonnets ; décomposition spatiale de l image par une pyramide de type différence de gaussiennes, puis application d une fonction de gain qui augmente ou diminue la normalisation du contraste en fonction de la luminance de fond (représentée par la valeur affectée au pixel correspondant du niveau supérieur de la pyramide) ; transformation des canaux SML en canaux AC 1 C 2 (A achromatique, C 1 opposition rouge-vert, C 2 opposition bleu-jaune) ; application d une fonction de transduction pour prendre en compte une sensibilité au contraste différente pour chaque niveau de la pyramide ; ajout des signaux des bâtonnets au canal A.