t u t o r i a u x
La profondeur de champ avec 3DS Max et Brazil
Voici un tutorial parut dans le magazine Création Numérique, expliquant la profondeur de champ, avec 3DS Max et Brazil.
CréaNum
1 - Introduction : qu'est-ce que la profondeur de champ ?
La vision humaine a ses limites, variables d'un individu à l'autre. Aussi loin que porte notre regard, il y a toujours une zone en arrière-plan qui reste floue. Ce phénomène est nettement perceptible en photographie, où cette zone de netteté varie en fonction de la focale utilisée et de la distance du sujet. Afin de rendre crédible un rendu photo-réaliste, on doit prendre en compte ce paramètre, sinon une sensation indéfinie d'artificialité flotte sur l'image, causée par une trop grande netteté de l'image que notre cerveau n'est pas habitué à voir.

Nous allons réaliser une bouteille de sauce piquante, sur laquelle nous allons rendre quelques vues en macro. Le but de ce tutorial est d'apprendre à créer un éclairage et à paramétrer une caméra pour un rendu réaliste.

2 - La modelisation
Créez le profil de la bouteille avec l'outil 'Ligne' en dessinant l'intérieur et l'extérieur de la bouteille avec la même spline. Prenez garde à ce que les deux points de droite et le point de pivot de l'objet soient alignés sur l'axe z.
Dessin de la ligne qui servira pour le profil de la bouteille
Appliquez un modificateur 'Révolution' d'une valeur de 360° à cette ligne afin créer la bouteille. Ici, le nombre de segments de la révolution doit être assez élevé car la bouteille est destinée à être vue en gros plan, il faut donc réduire la taille des arrêtes.
Modificateur 'Révolution'
Utilisez la même méthode pour créer le liquide à l'intérieur de la bouteille, en prenant bien garde que les deux lignes soient au plus près sans jamais se toucher.

Créez un polygone générique à 8 cotés pour le bouchon et un tube pour l'étiquette le long du goulot. L'étiquette sur le corps de la bouteille est créée avec une boite de très faible hauteur, avec un modificateur 'Courbure' pour qu'elle épouse la forme de la bouteille.
Vous avez maintenant 5 objets : la bouteille, la sauce, les 2 étiquettes et le bouchon.

Modélisation finale
Appliquez une texture différente à chaque objet, nous les paramétrerons plus tard.
3 - Camera et lumiere

A l'aide du mode 'pan' et 'rotation' de la vue en perspective, cherchez un point de vue intéressant, en gros plan de préférence. Puis créez une caméra à partir de ce point de vue.
Par défaut la caméra créée a une cible, nous allons la conserver telle quelle, cela nous permettra de paramétrer plus facilement la profondeur de champ.
Clonez l'ensemble des objets de la scène afin d'avoir deux bouteilles et placez la seconde de façon à pouvoir, du même point de vue, focaliser sur la première ou sur la deuxième.

Placement de la caméra

Pour la lumière, nous allons ici nous contenter d'un éclairage simple, à l'aide d'une lampe omnidirectionnelle placée au dessus et en arrière-droite de la scène afin de ne pas avoir trop de reflets lumineux parasites.

Nous allons utiliser ici l'illumination globale et indirecte dans un environnement blanc, aussi la puissance de l'éclairage doit être baissée un peu afin de ne pas trop surexposer l'image, Ici le multiplicateur est de 0.75, on active les ombres avec un paramétrage global des ombres lié aux textures. Tous les autres paramètres seront réglés avec Brazil.

Placement de la lumière
4 - Texturage

Nous allons utiliser les modèles de textures fournis par Brazil pour notre rendu. Pour la bouteille nous allons utiliser la texture 'Brazil Glass' qui simule parfaitement le verre.

On veut simuler ici du verre incolore et très transparent, les paramètres de réfraction n'ont donc pas besoin d'être changés. En revanche, en observant une bouteille de sauce piquante, on peut constater que le verre est très épais par rapport à sa taille, aussi nous pouvons augmenter l'indice de déformation de la réflexion.

Texture verre

Les autres textures sont faites à partir de la texture 'Brazil advanced'. Le bouchon est en plastique, on règle donc un niveau spéculaire à 80 et l'adoucissement à 50 pour lui simuler son brillant, et on lui donne une couleur rouge uniforme. La sauce a une consistance assez grumeleuse et une couleur rouge brûlant pas tellement uniforme. On va lui mettre un niveau spéculaire à 100 et un adoucissement à 40 pour simuler le liquide. Pour la couleur on va utiliser une texture ‘ bruit ' avec une taille très petite, afin de mélanger de façon non homogène un rouge orangé et un rouge marronnasse. Pour la granulosité, on utilise également une texture 'bruit' dans le canal 'bump', à la même taille que pour la couleur pour qu'ils se superposent et que les morceaux soient simulés autant par le relief que par la couleur.

Les étiquettes sont réalisées sous Photoshop. Il faut deux images par texture, une en couleur pour le canal de 'Color', et une en noir et blanc pour le canal 'bump' afin de simuler un léger relief en creux causé par l'impression.

Créez pour chacune une texture 'multi/sous objet' avec une sous-texture 'brazil advanced' pour les bords et le recto de l'étiquette (vert pour l'étiquette du goulot, blanc pour celle du corps) et une seconde sous-texture avec l'image de l'étiquette. Pour simuler le papier, mettez 30 de valeur de niveau spéculaire et 20 d'adoucissement.

Texture de l'étiquette
5 - Parametrage du rendu

Dans la fenêtre de rendu, dans l'onglet 'commun', sous menu 'affecter rendu' sélectionnez en 'production' le moteur de rendu 'Brazil', déverrouillez la 'production' et 'l'éditeur de matériau sinon vous risquez de ne plus avoir accès à l'aperçu de vos textures dans la fenêtre d'éditeur de matériaux.

Ensuite allez dans l'onglet 'rendu' afin de paramétrer le moteur de rendu.

Dans le sous menu 'general option' sélectionnez 'Max VBF' dans le 'virtual frame buffer' et décochez 'auto lunch' de la console, cela évitera d'avoir trop de fenêtres qui s'ouvriront quand on lancera le rendu.

Brazil offre la possibilité de simuler un sol infini, que l'on va utiliser ici. Allez dans l'onglet 'CSG Server'et activez le sol à une altitude de 0, avec comme texture 'brazil advanced'. Editez cette texture dans l'éditeur de matériaux, mettez-lui une couleur blanche, un niveau spéculaire et un adoucissement à 0.

Ensuite, dans la fenêtre de rendu, allez dans le sous-menu 'image sampling'. Les valeur P1, P2 et P3 correspondent à la qualité de rendu, P1 étant la plus médiocre, mais également la plus rapide, elle ne nous intéresse que pour faire un pré-rendu qui nous permettra de vérifier si la composition de l'image est satisfaisante, pour le final on utilisera la valeur P3.

Nous allons maintenant paramétrer l'illumination globale, pour cela, allez dans l'onglet 'luma server'. Nous allons nous simuler une lumière d'extérieur pour avoir une scène bien éclairée, aussi cochez les cases 'Sky light' en illumination directe et indirecte.

Dans les paramètres d'illumination globale vous pouvez réglez les valeurs maximale et minimale du 'shade rate' comme vous avez réglé les valeurs P1 à P3 de la qualité de l'image plus haut, toujours au détriment du temps de rendu.

Ensuite vous activez les ombres transparentes et l'utilisation des paramètres d'environnement, prenez garde toutefois à la couleur utilisée car elle influe sur la couleur de l'ambiance lumineuse de la scène. Ici elle doit être réglée sur un rouge chaud très pale qui s'accordera bien mieux avec notre sauce que le bleu froid par défaut.

Réglages de l'illumination
Maintenant que notre scène est prête, en lançant le rendu, on a une vue très réaliste de nos bouteilles. On peut donc commencer à jouer avec la profondeur de champ.
6 - Profondeur de Champ

C'est à ce moment là que la cible de notre caméra va avoir son utilité. Pour le premier rendu, la cible est centrée sur l'étiquette de la bouteille au second plan, en sélectionnant la caméra, on peut avoir la distance de la cible, ici 116. C'est cette valeur qui nous intéresse.

Dans la fenêtre de rendu, allez dans l'onglet 'rendu', sous menu 'image sampling' et activez la profondeur de champ ( depth of field sampling : on ). Dans la case 'Focal dist', reportez la valeur de la distance de la caméra à la cible.

C'est à partir de cette valeur, correspondant à la focale sur laquelle nous voulons faire le point que va être calculée la profondeur de champ, et la perte de netteté qui l'accompagne. Les valeurs 'initial rate' et 'f-stop' vont permettre de jouer sur le piqué de l'image et la quantité de flou qui sera générée autour de la focale. Pour cette scène et un réglage proche de l'œil humain utilisez 7 et 9 comme valeur.

Réglages de la profondeur de champ
Et voici ce que cela donne au rendu :
Rendu 01

On peut constater que près de notre cible, l'image est très nette et qu'en s'en éloignant on devient de plus en plus flou.

Pour le second rendu, nous allons réduire à 50 la distance entre la caméra et la cible, de façon à focaliser sur l'étiquette de la bouteille du premier plan. On reporte la valeur 50 dans la fenêtre de rendu à la place du 116, et voilà ce que cela donne :

Rendu 02
7 - Conclusion

Grâce à l'utilisation de la profondeur de champ, on gagne en photo-réalisme, au détriment de la netteté du rendu, mais en produisant une image qui est plus familière à l'œil, donc plus proche de notre perception humaine de la réalité.

Cela nécessite généralement plus temps pour faire le rendu, mais ceci peut être rattrapé en allégeant la scène, en effet ce qui est dans la zone de flou peut être modélisé en low-polygone car de toutes façons la plupart des détails disparaîtront au final.