KPovModeler 1.0

Ecrit par Olivier Saraja (olivier_at_linuxgraphic.org)

Au commencement était... le sol!

C'est la fonction Champ de Hauteur (en anglais, Height Field) qui va nous intéresser plus particulièrement ici. De façon générale, il s'agit là de définir un maillage d'éléments triangulaires dont les noeuds vont être placés à certaines altitudes données par une cartographie de couleurs, comme celle que nous venons de réaliser à l'aide de The Gimp. Il s'agit donc d'une fonction très intéressante lorsqu'il s'agit de créer rapidement des paysages, mais également des murs de briques et des bas-reliefs (il suffit alors de redresser l'objet Champ de Hauteur au lieu de le laisser à plat), car les bosselages de tels objets deviennent réels et non plus simulés comme cela est le cas si vous utilisez, par exemple, la fonction 'normale' des textures.

Il y a peu de choses à savoir pour utiliser efficacement les Champs de hauteur . La première est que la résolution de votre image va directement influer sur la dureté des facettes constituant votre paysage. Ci-dessous, vous pouvez comparer l'évolution du lissage naturel du paysage en fonction de la résolution de l'image source: 64x64 pixels à gauche, 128x128 pixels au mileu, 256x256 pixels à droite. Il est facile de constater que le maillage est de moins en moins apparent de gauche à droite (l'anti-crénelage n'a pas été activé afin de ne masquer aucun des défauts de représentation), et que le profil se découpant contre le ciel se fait plus lisse.

Bien sûr, plus vous augmentez la résolution de votre image source, plus le nombre de triangles généré sera important et plus le temps de rendu va augmenter. C'est pour cela qu'il est souvent intéressant de cocher l'option Lissage tout en utilisant une image source de résolution moyenne. L'activer oblige le moteur de rendu à recalculer la normale de chaque facette de façon à ce que la lumière renvoyée varie de façon plus progressive d'une facette à l'autre, de sorte que les facettes soient moins visibles sur les parties pleines, comme le montre la Figure 4, avec une résolution d'image source faible. Vous noterez que l'activation du Lissage n'améliore en rien le profil « tranché » du Champ de Hauteur et que seule l'amélioration de la résolution semble y parvenir.

Une autre option souvent intéressante du Champ de Hauteur lorsque vous vous en servez pour la création de paysage est Niveau d'eau . Il s'agit d'un nombre compris entre 0 et 1 qui indique à povray la portion du champ à rendre. Par défaut fixé à 0, ce paramètre conduit au rendu du Champ de Hauteur entier. Fixé à 0.35, par exemple, il rognera les 35% du paysage situé « sous le niveau de l'eau ». Fixé à 1, bien évidemment, la totalité du paysage est rognée et le Champ de Hauteur n'apparaît pas du tout au rendu.

L'avantage de cette fonction est que le rendu est plus rapide que si vous aviez voulu obtenir le même résultat en utilisant la fonction booléenne Différence (voir LM 46). A noter que comme un objet Sphère du Ciel a été inséré dans la scène, à moins d'insérer un objet en guise de plan d'eau, c'est lui que nous voyons en arrière-plan des zones rognées.

Enfin, pour être exhaustif, parlons brièvement de l'option Hiérarchie , qui est activée par défaut afin d'optimiser le calcul des intersections. La désactiver vous fera gagner un peu de temps de rendu mais cela n'est généralement perceptible que pour les images sources de faibles résolutions. Je vous conseille de ne pas désactiver ce paramètre.