Dans ce court tutoriel, je vais vous montrer une méthode pour récupérer la valeur de distance d’un point dans le rendu. Cela peut être utile pour créer des effets de Compositing basés sur des valeurs précises, par exemple pour générer des masques actifs uniquement au-delà d’une certaine distance.
Transcription de la vidéo
Bonjour à tous ! Comme vous le savez peut-être, le Depth Render Pass dans le Compositing permet d’obtenir la distance des objets par rapport à la caméra virtuelle sous forme d’une image en niveaux de gris 32 bits.

Il y a quelque temps, j’ai publié un tutoriel où je parlais de ces données et de la façon de les utiliser, avec ou sans normalisation, pour créer du brouillard ou d’autres effets basés sur la distance.
Dans ce court tutoriel, je vais vous montrer une méthode pour récupérer la valeur de distance d’un point dans le rendu. Cela peut être utile pour créer des effets de Compositing basés sur des valeurs précises, par exemple pour générer des masques actifs uniquement au-delà d’une certaine distance.


Voici le point clé : si vous avez une image ouverte dans un Image Editor et que vous faites un clic droit sur un point, Blender vous affichera les valeurs RGBA de ce pixel dans la barre inférieure. Le canal Alpha peut être particulièrement utile à cet effet. De cette manière, vous pouvez visualiser le rendu d’origine, localiser les points qui vous intéressent, cliquer dessus et lire la valeur de distance dans le champ Alpha. Je vais vous montrer comment cela fonctionne.

Avant de lancer le rendu, j’active le Depth Pass dans l’onglet View Layer de l’éditeur de propriétés. Dans cet onglet, l’information de profondeur est étiquetée Z.

Une fois le rendu lancé, dans un éditeur Compositor, je connecte la sortie Depth du nœud Render Layers à l’entrée Alpha du nœud Viewer.

J’ouvre ensuite un Image Editor et, à l’intérieur, je charge l’image Viewer.

Maintenant, en cliquant avec le bouton droit sur l’image, j’obtiens les valeurs de distance dans le champ Alpha, en unités Blender, à partir de la caméra, pour chaque point de l’image. Un clic droit sur un point de l’arrière-plan du monde (World Background) renverra une valeur de 10 milliards, ce qui est extrêmement élevé et utilisé pour indiquer la distance pratiquement infinie de l’univers virtuel.

Cette méthode fonctionne aussi bien avec le Depth Pass tel quel qu’avec sa version normalisée. La différence est que la valeur non normalisée représente la distance réelle en unités Blender entre les objets et la caméra virtuelle, tandis que la valeur normalisée va de 0 à 1, où 0 correspond au point le plus proche de la caméra, et 1 au plus éloigné. J’ai abordé ces aspects dans le tutoriel mentionné au début.

Lorsque le Depth Pass n’est pas normalisé, cliquer sur une des pierres tombales me donne une valeur d’environ 3585. Pour créer un masque qui soit blanc pour tous les objets situés entre la caméra virtuelle et cette valeur, et noir dans les autres cas, il suffit de retourner dans l’éditeur Compositor et d’ajouter un nœud Math Less Than à la configuration, en connectant la sortie Depth à la première entrée Value du nouveau nœud, et en réglant la seconde entrée à environ 3585.


Voilà, c’est tout pour ce court tutoriel ! À bientôt !