• Aucun résultat trouvé

Caractéristiques générales d’un document 3D

IV. Plan de la thèse

1.2. Caractéristiques générales d’un document 3D

Le document 3D est construit autour de la notion de graphe de scène. Ce graphe, acyclique et direct organise de manière flexible et extensible les différentes dimensions d’une scène. Nous détaillons les deux principales dimensions d’un document 3D : la géométrie et l’apparence. Une dernière partie de cette section donne un aperçu d’autres dimensions que l’on peut recontrer dans une scène 3D

1.2.1. Graphe de scène

La notion de graphe de scène a été proposée au début des années 80 afin d’accélérer le processus de visualisation de scènes 3D sur des ordinateurs d’assez faible puissance, disposant de cartes graphiques standard. Le rendu d’une scène 3D est obtenu en projetant les polygones 3D dans un espace 2D correspondant à la surface d’affichage du dispositif de visualisation. Plus le nombre de polygones à dessiner est important, plus le rendu est lent. Les caractéristiques du

graphe de scène et son exploitation au sein de scènes 3D se trouvent toujours au centre des préoccupations de la communauté 3D [Strauss, 1999][Sowizral, 2000][Döllner et al., 2002] [Naef et al., 2003][Coehlo et al., 2004][Reitmayr et al., 2005]. Cet engouement autour de la notion de graphe de scène est justifié par le fait qu’il reste le principal moyen d’organiser des éléments au sein d’une scène 3D et d’optimiser le rendu visuel d’une scène.

Scène Group Transformation géométrique route:Forme3D Transformation géométrique arbre:Group Géométrie Apparence tronc:Forme3D feuillage:Forme3D

Géométrie Apparence Géométrie Apparence

Transformation géométrique réutilise

Transformation

géométrique Transformationgéométrique

Figure 1.1 Exemple de graphe de scène.

Dans la Figure 1.1 nous illustrons un graphe de scène qui peut correspondre à la scène présentée en haut à gacuhe de la Figure 1.1. Chaque nœud de graphe remplit une fonction bien précise : la constitution de groupes d’objets, la définition de l’emplacement spatial, la définition de la géométrie des objets, la définition de l’apparence des objets, etc.

La fonctionnalité primaire du graphe est celle d’assurer le rendu optimal. Afin d’atteindre ce but, il faut effectuer uniquement le rendu des éléments géométriques potentiellement visibles. L’élagage d’éléments qui ne rentrent pas dans le champ de vision de l’utilisateur, précède le processus de projection. Plus l’élagage est efficace et sélectif, plus le calcul des projections 2D et le rendu visuel sont rapides. Les éléments à élaguer sont identifiés par différents calculs de visibilité (par exemple, la technique ray tracing [Levoy et al., 1990]) appliqués à chaque élément. Les éléments élagués sont ceux situés en dehors du champ de vision de l’utilisateur et ceux qui sont complètement cachés par d’autres éléments visibles dans la scène. Lorsqu’aucune structure (hiérarchique ou autre) ne régit l’organisation des éléments constituant la géométrie de

la scène, chaque élément doit être pris en compte pour effectuer les calculs de visibilité. Pour limiter le nombre d’éléments à prendre en compte lors des calculs de visibilité, les éléments sont regroupés en éléments composites suivant la décision du concepteur de la scène. Ce regroupement doit être fait par rapport à la proximité des objets au sein de la scène afin que cela soit efficace. À leur tour, les éléments composites peuvent faire partie d’autres éléments composés. Ainsi, les éléments d’une scène sont organisés selon une structure hiérarchique. Afin de faciliter la réutilisation des éléments (par exemple, des arbres ayant les mêmes caractéristiques) à travers plusieurs branches de la structure hiérarchique, il est possible que plusieurs éléments composites partagent les mêmes sous-élémentss.

Tous les éléments (simples ou composites) sont caractérisés par la boîte englobante (bounding box - bbox) qui correspond à la plus petite boîte incluant spatialement tous les éléments le constituant. Les dimensions et la position de cette boîte sont utilisées lors de calculs de visibilité en vue d’élagage. Si la boîte ne se trouve pas dans le champ de vision, tous les éléments qu’elle contient sont élagués. Les éléments y étant inclus sont forcément hors du champ de vision. Ainsi, suivant le nombre d’éléments contenus dans chaque élément composé, le processus d’élagage peut se révéler très rapide.

Même si initialement le concept de graphe de scène a été conçu pour accélérer le rendu d’une scène 3D, il est devenu au cours du temps un moyen standard de description de modèles 3D grâce à sa capacité d’isoler tant la description de différentes caractéristiques de la scène, que l’organisation spatiale en diverses régions au sein de la scène.

Dans les sections suivantes, nous étudions en détail les principales dimensions descriptives d’un document 3D : la géométrie et l’apparence. Une dernière partie donne un aperçu d’autres dimensions que l’on peut retrouver dans les scènes 3D.

1.2.2. Géométrie

La géométrie est la dimension fondamentale de toute document 3D. Elle constitue le squelette de la scène. Les autres dimensions (apparence, lumières, etc.) viennent s’y ajouter afin d’accroître le niveau de réalisme de la scène.

Suivant la manière dont les éléments géométriques sont décrits, nous pouvons isoler trois grandes familles de description géométrique : la description par balayage, la description surfacique et la description volumique.

Description par balayage

La description par balayage permet de définir des objets 3D en utilisant une surface 2D. Cette surface suit une translation (voir Figure 1.2a), une rotation (voir Figure 1.2b) ou bien une trajectoire quelconque (voir Figure 1.2c).

a) balayage par translation b) balayage par rotation c) balayage d’une trajectoire

L’espace balayé par la surface 2D en suivant la trajectoire, définit l’objet 3D. Dans la Figure 1.2a, la forme de base est l’hexagone qui se trouve en bas de l’objet 3D, et la trajectoire correspond à la hauteur de l’objet 3D. Dans la Figure 1.2b, la surface 2D correspond au polygone à gauche de la figure et la trajectoire correspond à un cercle. Dans la Figure 1.2c la forme de base est représentée par le cercle vertical situé dans la partie droite de la figure. La trajectoire correspond au cercle dessiné au-dessus de l’objet.

Description surfacique

La description surfacique correspond à la définition d’objets géométriques à l’aide de surfaces polygonales. Il y a deux types de description surfacique : la description par contours et la description par frontières. La description par contours, également appelée la technique du fil de fer, correspond à la définition d’un objet à partir d’un ensemble de sommets et d’arêtes. Ce genre de construction est ambigu car au moment de la visualisation il est difficile de distinguer les parties pleines des contours des parties vides. Ainsi, lorsque l’on regarde le cube dans la partie gauche de la Figure 1.3, on ne peut pas savoir à quel cube de la partie droite cette représentation filaire correspond.

Figure 1.3 Ambiguïté de la représentation de type fil de fer d’après [Ramos, 2003].

Une alternative est la description par enveloppes ou frontières. Dans la littérature on rencontre aussi le terme B-Rep (de l’anglais Boundary Representation) pour ce type de description. Ce type de description introduit, en plus des arêtes et des sommets, la notion de facette. Ceci permet de délimiter des volumes et de faire la distinction entre l’intérieur et l’extérieur d’un objet. Les facettes peuvent être définies en tant que polygones, surfaces courbées, surfaces quadratiques, etc. Dans la Figure 1.4, nous illustrons la construction d’un cube au moyen de six polygones. Cela permet de construire des objets 3D plus complexes que la technique du fil de fer. Cependant, les deux techniques de description surfacique présentent l’inconvénient que chaque élément (facette, arête, sommet) doit être défini indépendamment des autres. Le document décrivant les objets est par conséquence de taille importante.

Description volumique

La description volumique correspond à la technique la plus évoluée de construction d’objets 3D. Elles utilisent des éléments géométriques qui couvrent les trois dimensions de l’espace. Plusieurs techniques de construction d’objets 3D entrent dans cette catégorie.

La technique appelée Regularized Boolean Set Operation (RBSO) définit des objets complexes en appliquant une série d’opérations ensemblistes (union, différence, intersection) sur des volumes basiques. La Figure 1.5 illustre la construction de trois objets 3D en utilisant trois opérations ensemblistes supportées par RBSO.

Figure 1.5 Construction d’objets 3D en utilisant la technique volumique RBSO.

Une autre technique de description volumique est appelée Constructive Solid adaptation

(CSG). Dans le cadre de cette technique, le concepteur dispose d’un certain nombre de primitives bornées (cube, cylindre, sphère, etc.) et non bornées (demi-espace, plan, etc.). Les objets sont définis comme des graphes dont les nœuds représentent des opérateurs booléens ou des transformations géométriques (rotation, translation, mise à l’échelle, etc.). Les opérateurs illustrés dans la Figure 1.5 – union de formes, intersection de formes, différence de formes, décident de la forme des objets composites. Les transformations géométriques décident de la disposition spatiale des objets. Les feuilles correspondent aux primitives bornées ou non bornées. L’existence d’une structure aboutie et exploitable au niveau algorithmique introduit, par ailleurs, le problème de non unicité de la représentation d’un objet 3D. Plusieurs arbres CSG différents peuvent représenter la géométrie d’un même objet 3D.

La partition de l’espace en sous-régions, à différents niveaux de granularité, est à la base d’une troisième technique de représentation volumique de la géométrie 3D : l’énumération spatiale. L’objet 3D est considéré comme un solide décomposable en un ensemble de solides élémentaires voisins les uns des autres et qui ne s’intersectent pas. L’unité de base est le voxel

qui correspond à un élément de volume unitaire. Un cas particulier d’application de cette technique est la représentation par octree. L’octree correspond à la décomposition de l’espace en utilisant des cubes (voir Figure 1.6).

L’avantage de cette technique réside dans la possibilité de distinguer assez facilement l’intérieur et l’extérieur d’un solide et de calculer le volume du solide par énumération de ces volumes unitaires. En contrepartie, la représentation est approximative, et pour des objets dont la représentation est bien détaillée, le nombre de voxels est très important.

Une dernière technique présentée ici est la construction de la géométrie d’une donnée 3D par le processus d’instanciation de primitives. Cette technique s’appuie sur un ensemble prédéfini de formes géométriques. L’intérêt de l’instanciation de primitives est qu’elle introduit un niveau d’abstraction entre l’usage fait par le concepteur et les éléments géométriques proprement dits qui la représentent. L’arsenal de primitives mises à la disposition des concepteurs peut couvrir plusieurs techniques de description sans que le concepteur en soit perturbé lors de la modélisation de nouvelles scènes.

Les divers formats de représentation 3D s’appuient sur une ou plusieurs de ces techniques de représentation de la géométrie. Le choix de supporter plusieurs techniques de descriptions est judicieux car aucune technique ne peut être considérée comme étant la meilleure pour tous les domaines d’application.

Dans la section suivante nous nous intéressons aux moyens d’ajouter une apparence au squelette de la géométrie 3D construite.

1.2.3. Apparence

L’apparence d’une scène 3D est donnée par les éléments graphiques qui sont attachés aux éléments géométriques qui décrivent la scène. L’apparence d’une scène peut être porteuse d’information toute aussi importante que la géométrie et la forme des objets qu’elle décore. Dans le domaine de la visualisation de données à l’aide de scènes 3D les couleurs jouent un rôle très important tel qu’illustré dans [Robertson et al., 1991][Sebrechts et al., 1999][Wiza et al., 2005]. L’apparence d’une scène 3D est introduite à travers le type de matériel et les textures qui sont associés aux éléments géométriques.

Le type de matériel décide de comment l’élément géométrique interagit avec la lumière lors du processus de visualisation. Suivant le type de matériel, plusieurs comportements peuvent être imposés aux supports géométriques : refléter, absorber ou filtrer la lumière, etc. Le comportement des objets géométriques vis-à-vis de la lumière doit être pris en compte au moment du calcul de visibilité en vue d’un rendu efficace.

Si le matériel régit les propriétés intrinsèques des objets géométriques, leur aspect extérieur est sous l’emprise des textures. Une texture peut être définie à l’aide d’une ou plusieurs couleurs, d’une image ou d’un objet vidéo. Pour chaque objet géométrique on peut associer une ou plusieurs textures. Lorsque deux ou plusieurs objets graphiques sont utilisés pour décorer un objet géométrique, on parle de multi-texture. Dans le cadre d’une multi-texture, soit on emploie plusieurs textures sur la même région spatiale, soit on divise l’objet géométrique en sous-régions et on associe à chacune sa propre texture. Dans le cas où plusieurs textures sont associées à la même région spatiale, il est possible d’associer des niveaux de transparence et des opérateurs qui décident de la manière dont les couches sont exploitées afin de déterminer la couleur résultante dans chaque point de la texture.

1.2.4. Autres dimensions

D’autres dimensions caractérisant les espaces 3D peuvent être inclues dans les modèles 3D. Par exemple, afin d’accroître le réalisme de la scène, des lumières peuvent être disposées dans la scène. La présence de divers sons peut être apposée dans certaines parties de la scène.

Pour donner vie aux modèles 3D, des animations peuvent être associées aux objets géométriques. Ainsi, on peut retrouver : des transformations géométriques introduites par le biais d’interpolations, des changements de l’apparence des objets, des variations dans l’intensité de la lumière, etc. De la même façon que l’apparence, le temps peut être introduit en associant des intervalles de vie directement aux objets géométriques [Duecker et al., 1997][Hetherington et al., 2004].

Toutes ces dimensions peuvent être introduites directement dans le document 3D en s’appuyant sur la flexibilité offerte par le graphe de scène. Par exemple, dans [Hetherington et al., 2004] les auteurs introduisent la notion de temps au sein de modèles 3D au moyen d’intervalles de temps associés aux descriptions géométriques.

Après cet aperçu des principales caractéristiques de l’information 3D, dans la suite de ce chapitre nous nous intéressons à une famille d’outils, de standards et de langages de descriptions de documents 3D.