Vous êtes 38.103.63.56(Login)

overcrowded / R I A M3 D

carte des liens de la page courante RIAM3D DossiersAnrEtPoles ProjetSolipsis DirectX OpenGL OpenSceneGraph

R I A M3 D

Plateforme et modélisation 3D


La représentation réaliste du monde à l'écran ainsi que son affichage en temps réel sont des éléments primordiaux pour rendre l'expérience de l'utilisateur intéressante et captivante. La prise en compte efficace de ces éléments constitue un premier défi. L'ambition du projet est également de permettre aux utilisateurs de s'impliquer dans la création collective d'un territoire virtuel public initialement vierge. Ce sont en effet les utilisateurs eux-mêmes qui construiront leur propre monde. Pour atteindre cet objectif il est alors primordial de rendre accessible au plus grand nombre ce pouvoir de construction. Enfin le dernier enjeu est la génération automatique de liaisons entre sous-territoires afin d'offrir continuité et cohérence au monde.

Visualisation du monde virtuel

Le premier objectif consiste à offrir à Solipsis un moteur d'affichage 3D temps réel au niveau des standards actuels. Il s'agit avant tout d'un travail de développement et non de recherche, cette brique mineure étant néanmoins nécessaire pour la matérialisation du projet. Afin de ne pas réécrire des routines déjà bien connues et accélérer les développements, il est envisagé d'utiliser une bibliothèque de rendu 3D haut niveau libre. Deux projets sont à remarquer dans le monde du libre, tout deux sous licence GNU Lesser General Public License (LGPL) : Ogre [18] et OpenSceneGraph? [19] représentant respectivement 5 et 8 ans de travaux et disposant chacun d'une communauté active de développeurs. OpenSceneGraph? a l'avantage d'être particulièrement adapté au développement d'applications de réalité virtuelle, tandis que Ogre, plus orienté applications ludiques a quant à lui l'avantage d'être indépendant de la couche 3D bas niveau pouvant être ainsi indifféremment OpenGL? ou DirectX?.
Une des difficultés consiste ici à concevoir un moteur suffisamment souple pour s'adapter aux limitations matérielles et aux puissances de calcul variées des postes clients, en termes de carte graphique notamment. Les diverses techniques de hiérarchisation de scène (graphe de scène, quad-tree ...), de niveau de détail ou de culling devront être utilisées à bon escient. Un autre aspect consiste à gérer le fait que les données à afficher à l'écran ne seront reçues qu'au compte goutte par le réseau pair-à-pair. Le moteur doit pouvoir rendre la scène avec des données même partielles. Pour cela, le principe de base consiste à transmettre d'abord une version simplifiée des objets, puis progressivement les informations qui permettront d'augmenter le niveau de détail. Le moteur d'affichage doit donc être assez souple pour prendre en compte ces modifications en temps réel.

Modélisation et auto-production de contenus 3D

Le second volet se concentre sur la mise à disposition du grand public d'un outil permettant la modélisation d’environnements complexes sans posséder de connaissances approfondies du domaine. L'idée est en premier lieu de proposer une interface simplifiée à un logiciel libre de modélisation 3D pour rendre plus accessible l'auto-production de contenu. On pense notamment au modeleur Blender [20] sous licence GNU General Public License très performant mais "trop riche" pour une utilisation instinctive.
Néanmoins, ce nouvel outil sera plus qu'un modeleur facile d'emploi. Il se distinguera en effet des autres outils grand public d'ores-et-déjà disponibles par deux aspects. Tout d'abord, deux types de modélisation seront possibles : une modélisation impérative classique (définition précise des géométries sommet par sommet, détails des formes et des textures à donner ...), mais également une modélisation dite déclarative à base de requêtes de haut niveau [21]. Ce dernier type de modélisation permet au concepteur de créer des modèles incomplets à partir d'énoncés vagues ou imprécis ("carré rouge percé en son centre", "château médiéval à quatre tourelles" ...). L'avantage pour l'utilisateur, contrairement à ce qui est exigé par des outils impératifs, est qu'il n'est pas contraint d'avoir une idée précise du résultat final avant de commencer. Il s'affranchit ainsi d'une modélisation fastidieuse de formes parfois complexes. C'est ensuite à l'outil de proposer des solutions pertinentes respectant les propriétés énoncées. Ce mécanisme inclus notamment un interpréteur pour traduire les propriétés en une description bas-niveau par contraintes puis un solveur de contraintes qui produit le modèle à partir duquel vont être générées une ou plusieurs solutions parmi lesquelles l'utilisateur fera finalement son choix. On envisage également de pouvoir réduire la phase de description à la simple saisie d’un script L-System fourni directement au solveur, sans aucune interprétation préalable. Ce type de script contient des contraintes directement compréhensibles par le solveur. Si des outils permettant la modélisation déclarative de formes architecturales et de formes biologiques commencent à voir le jour [22], ce type de modélisation reste à l'heure actuelle à l'état de recherche.
Le second aspect innovant de ce modeleur est l'ajout d'un système de classification collaborative décentralisée spontanée ou folksonomie. Il s'agit ici de permettre aux utilisateurs d'associer des mots-clés (ou "tags") aux contenus 3D créés. Cette nouvelle classification spontanée sera déterminante pour la troisième et dernière sous-partie de ce lot et employé par le moteur de modélisation déclarative. Enfin, est également prévu de supporter et d'utiliser des formats ouverts pour le stockage des modèles 3D. Parmi les très nombreux formats disponibles permettant de stocker de l'information 3D [23], on retiendra le plus répandu et le plus généralement supporter par les outils de modélisation afin de favoriser l'interopérabilité. C'est pourquoi on préférera VRML à son récent successeur X3D [24].

Génération automatique de contenu 3D pour la cohérence du monde virtuel

Un des objectifs du projet est de favoriser la production et la mise à disposition de contenu par les utilisateurs afin de construire un environnement virtuel global. Chaque acteur individuel "possède" une partie de ce monde virtuel et ne peut créer qu'en son sein. Le problème posé est alors celui de la cohérence du monde obtenu sachant que la liberté est totale et que de vastes espaces entre zones peuvent rester inoccupés. L'idée ici est de peupler de façon automatique les vides entre deux sous-parties du monde avec un contenu le plus cohérent et le plus pertinent possible. Ce mécanisme fera l'objet du troisième et dernier sous-lot. On souhaite par exemple que deux forêts "construites" à proximité l'une de l'autre par deux utilisateurs distincts soit reliées automatiquement par une bande végétale visuellement cohérente. De même, deux maisons disposant toutes deux de sentiers en gravier se verront reliées.
De nombreux problèmes se posent. Tout d'abord il faut que le processus de génération automatique de contenu "reconnaissent" les entités à relier. Pour cela il peut s'appuyer sur les informations sémantiques du mécanisme de folksonomie introduit plus haut. Il faut alors être en mesure d'interpréter ces informations pour en déduire un contenu adapté. Une seconde difficulté se pose lorsque les objets n'ont pas de rapport sémantique à priori ou que ces informations sont omises. Alors seules les informations géométriques propres aux objets peuvent permettre de proposer un contenu autogénéré cohérent. On pense alors aux techniques d'analyse de formes et de morphing 3D.
A cheval entre techniques relativement éprouvés de modélistion automatique et usage très novateur de folksonomie, les développements qui seront réalisés dans le cadre de ce sous-lot ont vocation, outre ce projet, à permettre aux entreprises spécialisées dans la modélisation de vastes espaces d’imaginer le développement de nouveaux territoires à partir d’informations disparates, et notamment issues de contenus auto-produits.
Il n'y a pas de commentaire sur cette page. [Afficher commentaires/formulaire]