Introduction

Le principe du placage de texture dépendant du point de vue (section 1.4.1.7) est de mélanger et plaquer des images de référence d'une scène complexe sur un modèle géométrique approché de celle-ci. Comme nous l'avons montré en section 2.2, les effets de parallaxe produisent des artéfacts de flou dans la texture générée.

Dans ce chapitre, nous avons développé une approche brute pour résoudre ces problèmes. Plutôt que de se baser sur quelques images de référence pour créer une texture intermédiaire, nous créons une texture dont chaque texel stocke la visibilité de la scène originelle selon tous les angles d'observation possibles (figure 3.1). Ainsi, chaque élément de la texture est référencé par ses coordonnées de texture $ (u,v)$ et un angle d'observation $ (\theta,\varphi)$, soit quatre dimensions.

Figure 3.1: Comparaison ne notre méthode avec le placage de texture dépendant du point de vue.
\includegraphics[%
width=1.0\columnwidth,
keepaspectratio]{eps/tbp-precalc5.eps}

La méthode s'apparente au lancer de rayons virtuels des BTF (Bi-directional Texture Functions) de Dischler [Dis98] ainsi qu'au déplacement de surface dépendant du point de vue [WWT+03], car des informations géométriques sur le modèle de base sont stockées en chaque texel.

Motivations

La principale motivation de ces travaux est d'obtenir une image du modèle originel selon un angle de vue quelconque en un temps ne dépendant pas de sa complexité géométrique mais uniquement du temps de génération des textures (de définition fixe), et ceci afin d'obtenir un rendu en temps réel.

Le second objectif a été la prise en compte de modèles d'illumination locaux coûteux en temps de calculs, comme les BRDF acquises physiquement ou l'auto-ombrage. Ainsi, nos textures directionnelles varient en fonction de la position d'observation mais aussi en fonction de l'éclairement.

Un autre objectif qui a motivé ces travaux est la possibilité d'utiliser l'interpolation bilinéaire de texels des cartes graphiques pour corriger les imperfections visuelles sur les images résultantes. Comme nous l'avons montré en section 2.3.3, cette technique permet de ''boucher'' une partie des trous apparaissant dans les textures générées texel par texel, et d'augmenter ainsi la qualité du rendu avec un impact négligeable sur les performances.

Principe

D'un point de vue général, notre méthode consiste à remplacer une partie de la scène par son image vue à travers un polygone texturé positionné au sein de la scène (cf. figure 3.2), de façon à accélérer le rendu des parties complexes de la scène qu'elle remplace, et est en cela similaire aux travaux d'Aliaga [Ali96], et différente des BTF. La différence principale avec la méthode d'Aliaga est que notre texture s'adapte au point de vue de façon à prendre en compte les effets de parallaxe.

Figure 3.2: Remplacement d'une partie de la scène par un polygone texturé (un imposteur).
\includegraphics[%
width=0.70\columnwidth,
keepaspectratio]{eps/tbp-building.eps}

Une texture directionnelle est donc plaquée sur un polygone positionné autour du modèle d'origine. Dans nos travaux, nous avons utilisé une boîte englobant le modèle complexe de façon à le remplacer en totalité. Le modèle complexe est utilisé lors de la phase de précalculs pour construire les textures directionnelles, puis il est supprimé et remplacé pour le rendu par l'affichage de la boîte englobante texturée de la scène.

Le principe de la méthode est donc d'instancier et de plaquer une texture par face visible, l'ensemble prenant l'apparence du modèle d'origine.

Le rendu se décompose en deux étapes principales : le calcul de visibilité des texels et le calcul d'éclairement des texels.

$ \triangleright$ Le calcul de visibilité consiste à déterminer le relief de la scène pour une direction d'observation donnée. Ce relief est stocké en chaque texel, pour un ensemble de directions d'observations fixé.

$ \triangleright$ Le calcul d'éclairement consiste à attribuer une couleur à chaque texel de la texture en fonction de la position des sources de lumière ponctuelles et de l'observateur.



Sous-sections
Porquet Damien 2005-03-02