Dans ce tutoriel, je vais décrire la configuration de nodes que j’ai créée pour obtenir un rendu NPR (Non-Photorealistic Rendering) à partir d’un modèle 3D avec des matériaux et des textures PBR.


L'audio de ce tutoriel n'est pas disponible en Français. Vous pouvez regarder ci-dessous la vidéo avec l'audio en Anglais et des sous-titres en Français, en Anglais et dans d’autres langues. Sous la vidéo, vous trouverez la transcription traduite en Français.


Transcription de la vidéo

Bonjour à tous. Dans ce tutoriel, je vais décrire la configuration de nodes que j’ai créée pour obtenir un rendu NPR (Non-Photorealistic Rendering) à partir d’un modèle 3D avec des matériaux et des textures PBR. Plus précisément, nous utiliserons un modèle 3D d’un circuit électronique pour obtenir un rendu similaire aux illustrations des magazines d’électronique que je lisais il y a de nombreuses années.

Je commencerai par vous montrer la différence entre le rendu obtenu en important le modèle 3D, qui possède déjà ses PBR Textures connectées à un node Principled, et le rendu non photoréaliste, qui utilise uniquement la Base Color Texture et un node Principled configuré de manière appropriée.

Ce tutoriel a été réalisé dans Blender 4.1, et le moteur de rendu utilisé est Cycles.

Le tutoriel suivra ce plan :

Nous désactiverons l’éclairage existant dans la scène.

Nous effectuerons une première modification des entrées par défaut du node Principled.

Nous désactiverons certaines options Ray Visibility afin d’éliminer le Color Bleeding et d’autres effets d’ombrage indésirables.

Nous activerons Freestyle afin d’ajouter un contour aux géométries en post-production.

Enfin, nous modifierons à nouveau les entrées du node Principled pour créer un ombrage simple basé sur l’orientation des faces des objets par rapport à la caméra, afin de rendre l’apparence des géométries moins monotone.

La première chose à faire est de désactiver l’éclairage de la scène.

Le rendu PBR initial a été créé avec une HDR Texture dans le World Background et une source lumineuse Sun, mais dans ce cas, l’objet lui-même agira comme une source d’émission lumineuse afin de fournir un ombrage uniforme à toutes ses parties.

Supprimez donc les sources lumineuses existantes dans la scène et réglez l’intensité de l’éclairage du World sur 0.

Dans un aperçu Rendered de la vue 3D, nous ne verrons rien, précisément parce qu’il n’y a aucune source lumineuse dans la scène.

Ensuite, nous modifions les connexions du node Principled. Nous voulons obtenir une illumination uniforme des objets tout en conservant les couleurs et les textes présents dans la texture Albedo.

Déconnectez la texture Albedo ou Base Color de l’entrée Color du node Principled et connectez-la à l’entrée Emission, où nous pouvons conserver une intensité d’émission égale à 1.

Les textures Metallic et Normal ne nous intéressent pas, nous pouvons donc les supprimer.

Nous supprimons également la texture Roughness et définissons une valeur uniforme de 1 pour ce paramètre dans le node Principled.

Ces opérations doivent être effectuées pour tous les Materials présents dans la scène, qui dans ce cas sont deux : un pour le circuit imprimé et un pour les composants électroniques.

Dans un aperçu Rendered de la vue 3D, nous verrons maintenant tous les éléments clairement avec un éclairage uniforme. Cependant, pour le moment, l’éclairage est trop uniforme, il y a des réflexions colorées sur les objets proches, c’est-à-dire du Color Bleeding, et il n’y a pas encore de contours Freestyle. Résolvons ces problèmes un par un, en commençant par le Color Bleeding.

Ouvrez un onglet Object dans le Properties editor pour l’un des objets de la scène et accédez à la section Visibility.

Dans cette section, désactivez toutes les options du panneau Ray Visibility sauf l’option Camera.

Cette opération doit également être effectuée pour tous les objets présents dans le projet.

De cette façon, les seuls rayons lumineux présents dans la scène seront ceux émis par les surfaces et dirigés vers la caméra. Ainsi, nous n’aurons plus les effets gênants de Color Bleeding visibles jusqu’à il y a quelques instants.

Dans l’aperçu Rendered du 3D Viewport, nous obtenons déjà un résultat intéressant en soi, mais il peut être amélioré en ajoutant quelques lignes pour mettre en évidence les contours des objets.

Le module Freestyle est parfait pour cela. Nous pouvons l’activer dans la section correspondante de l’onglet Render du Properties editor. Dans cet onglet, nous pouvons également définir le mode d’application de l’épaisseur des lignes et, dans le cas du mode absolu, l’épaisseur des lignes en pixels.

Dans l’onglet View Layers, une section Freestyle est maintenant disponible, où nous pouvons définir de nombreux autres paramètres, mais je ne vais pas les parcourir maintenant. Le rendu que je vous ai montré au début du tutoriel a été réalisé simplement en activant Freestyle et en laissant les paramètres par défaut.

Cependant, Freestyle est appliqué au rendu final, donc ses effets ne sont pas visibles dans l’aperçu Rendered d’un 3D Viewport. Par conséquent, lançons un premier rendu pour observer le résultat obtenu jusqu’à ce point.

Pour obtenir un ombrage basé sur l’orientation des faces des objets par rapport à la caméra, je vais utiliser le node Layer Weight en mode Facing comme facteur de mélange entre deux versions différentes de la Base Color Texture.

Avant de mettre en place la configuration finale des nodes, je vais vous montrer l’effet du node Layer Weight Facing en utilisant deux nodes Emission avec des couleurs très différentes, connectés à un node Mix Shader, et en utilisant Layer Weight Facing comme facteur de mélange.

Assurez-vous de connecter la sortie Facing du node Layer Weight, et non la sortie Fresnel, à l’entrée Factor du node Mix Shader.

Comme vous pouvez le voir, en modifiant la valeur Blend, nous pouvons utiliser différents shaders en fonction de l’orientation des faces par rapport à la caméra.

Cependant, la transition entre les deux shaders n’est pas très nette. Pour obtenir une transition plus marquée, nous insérons un node Math en mode Greater Than entre Facing et Factor.

Le second paramètre du node Math servira de valeur seuil pour déterminer le passage d’un shader à l’autre.

Pour obtenir la même valeur à la fois pour le paramètre Blend du node Layer Weight et pour la seconde entrée Value du node Greater Than, nous insérons un node Value du groupe Input dans la configuration et nous le connectons à ces deux entrées.

En modifiant cette valeur, même avec de très petites variations, nous pouvons obtenir un bon facteur de mélange pour ajouter un ombrage non dégradé aux faces des objets.

Nous utiliserons ce facteur de mélange pour créer une version légèrement plus sombre de la Albedo Texture en fonction de l’orientation des faces des objets.

Maintenant, supprimez les deux nodes Emission et le node Mix Shader de la configuration, puis reconnectez le node Principled au Material Output.

Pour obtenir une version plus sombre de la Albedo Texture, connectez la sortie Color de la Base Color Texture à un node Brightness Contrast, en réglant Brightness sur -0.2.

Insérez un node Color Mix et connectez la sortie Color de la Albedo Texture à l’une des entrées image, puis la sortie du node Brightness Contrast à l’autre entrée image.

Connectez la sortie du node Greater Than à l’entrée Factor du node Color Mix que vous venez d’ajouter à la configuration.

Enfin, connectez la sortie du node Color Mix à l’entrée Emission Color du node Principled.

Cette configuration doit être reproduite pour tous les Materials présents dans la scène. Cependant, l’aperçu visible dans un 3D Viewport en mode Rendered n’est pas encore le résultat final, car il n’inclut pas l’effet Freestyle.

Lancez un rendu afin d’observer le véritable résultat final.

Le nouvel ombrage présente à la fois des aspects positifs et négatifs.

L’aspect positif est que, grâce à Freestyle et au node Facing, les objets ne sont plus trop plats, ce qui facilite la perception de leurs volumes.

L’aspect négatif est que cet ombrage change de manière significative en fonction de l’orientation des objets par rapport à la caméra. Il peut donc être nécessaire de passer un peu de temps à ajuster le node Value ou l’orientation des objets.

Il faut également noter que le node Greater Than, utilisé ici comme node de seuil pour séparer nettement la couleur selon l’orientation des faces, peut produire un résultat peu esthétique dans les animations. Dans ce cas, envisagez la possibilité de supprimer le node Greater Than, afin d’obtenir des transitions plus douces.

Voilà, c’est tout pour ce tutoriel. J’espère qu’il vous a été utile. À la prochaine fois !

Rechercher dans les Tutoriels

Saisissez une expression ou plusieurs mots-clés séparés par des virgules.

Modèles 3D, tutoriels et ressources en infographie de Francesco Milanese. Les licences d’utilisation des modèles 3D peuvent être achetées sur les boutiques externes accessibles depuis leurs pages respectives, conformément aux conditions de licence applicables. Francesco Milanese — Numéro de TVA : 06321250877. Contact : info@francescomilanese.com


POLITIQUE GENERALE DE CONFIDENTIALITE ET D'UTILISATION DES COOKIES