J’ai le plaisir d’accueillir Eric Adjibel, aka LightingParty, pour qu’il nous présente son script tres interessant pour l’optimisation de vos temps de rendu, en particulier sur du rendu d’animation, Multi-iR Passes. C’est typiquement le genre de setup ultra-pratique à exploiter sur une prod mais presque impossible à mettre en place sans scripter sur des scènes complexes, grace à Eric c’est terminé, on va tous pouvoir s’en servir !
Je souhaite avant tout, vivement remercier Matt qui m’accueille sur son site fort utile à la communauté 3D. Je viens donc partager ma technique de rendu, en images fixes et animées avec l’utilisation d’un script que j’ai développé. J’utilisais depuis longtemps, une technique un peu complexe mais efficace pour optimiser le calcul de l’irradiance map. Bien qu’ entièrement manuelle, elle fonctionnait, mais le plus gros souci était d’expliquer, au sein même d’une équipe, la méthode de travail et tous les réglages à effectuer.
D’ou l’idée d’un script qui utiliserait les selection sets, qui en modifierait automatiquement les propriétés avant de les envoyer dans le calcul de l’irradiance map sous forme de passes. Cela équivaut finalement à régler localement les paramètres de l’irradiance map, peut être que nous verrons prochainement dans VRay ce type de réglages par objet, pour le min/max rate ou le color threshold, mais pour l’instant, seul le méconnu GI Subdivs Multiplier est présent dans les VRay Properties. Pour rappel, ce dernier permet de régler les subdivs de GI par objet, ce qui n’est pas rien !!
Optimiser un rendu exterieur
Je l’utilise à la baisse pour les végétaux en extérieur (peu de subdivisions suffisent à un rendu propre), et à la hausse, pour les plafonds ou les murs en intérieur (pour gommer les splotches). En ajoutant à cela, un réglage spécifique des paramètres d’Ir map avec le script, on obtient une solution d’irradiance rapide et bien plus qualitative.
Optimiser un rendu intèrieur
Optimiser un rendu d’animation
Enfin, pour la méthode de rendu d’animation que je pratique, elle consiste à réutiliser une vieille méthode fiable qu’est le « walk-through animation », permettant un calcul de GI rapide, toutes les n frame, (pour une animation de caméra uniquement) et d’y introduire le brute force, plus robuste, pour les objets animés.
En effet, en cachant les objets animés, on peut alors calculer toute le Gi en « walk-through », et donc utiliser le script en mode « animation » . Toutes les n frames il calculera la GI en plusieurs passes avec un réglage d’Ir map en fonction des set de sélection prédéfinis. Puis les objets animés sont réaffichés pour être calculés en « Brute force » via l’option décochée « use irradiance map » des matériaux Vray, obligeant ainsi, le calcul en Bruteforce. Le nombre de subdivisions de Gi attribué à leur calcul, se règle alors via le paramètre de sudvis. du panneau « irradiance map » qui n’a plus d’effets, l’ir. map ayant été pré calculée.
Seule ombre au tableau, justement les ombres de contacts (occlusion) qui sont ignorées. Les objets animés sont bien visibles en réflexion/réfraction, émettent et reçoivent la GI, mais ne génèrent pas d’ombres de contacts. L’ir. map utilisée étant pré calculée, celle-ci ignore tout simplement que des objets animés sont apparus !
Ce petit souci est contourné par l’ajout d’un « Extra-texture » (vray dirt) dans le « render element » qui calculera uniquement l’occlusion des objets animés via le système d’exclusion du vray dirt. Le script peut donc être utilisé en images fixes mais surtout en animation , ou on pourra gagner énormément de tps de rendu, par un réglage fin par objet, de toutes les propriétés de l’irradiance qui ne peuvent malheureusement pas être modifiées localement à ce jour.
Petite note de version depuis que l’article a été écrit Eric a mis à jour son Script : Intégration du Brute force pour les objets animés
Le script optimise l’irradiance map en utilisant soit une solution de light cache déja précalculée et chargée dans les vray setting (option « light cache already loaded in vray settings »), soit en calculant le light cache avant de traiter l’irradiance map. Il peut calculer de l’animation avec objets animés, par l’utilisation du brute force appliqué uniquement aux objets animés, permettant ainsi de traiter l’animation comme un simple « walk-through ». Un ajout automatique de 2 passes (occlu + raw lighting à compositer après le rendu) permet de combler la perte des ombres de contact des objets animés.
Telecharger Multi IR Map Passes
Actuellement à la recherche d’un emploi vous pouvez retrouver son travail sur son site : www.lightingparty.com
Une perle ce script, merci Eric !
Merci Thomas, super gentil:)
Merci pour ce script, et pour avoir révéler l’intérêt d’utiliser le GI Subdivs Multiplier. Une question qui peut sembler naïve, mais je découvre…donc: Comment définissez-vous quel objets doivent avoir un réglage d’Ir map plus fin que d’autres? les verres et autres surfaces fortement réfléchissantes je le conçois, mais les plafonds, ou le sol et les escaliers comme dans votre dernier exemple, ça m’échappe. Et pour pouvoir faire des sélections set pertinentes, il faut comprendre quelle logique est à l’œuvre. Merci encore
Phicata, il n’y a pas de mauvaises questions alors pour les passes je procède de la manière suivante:
je rends la scène avec un min/max rate à -3/-1 et un color threshold à 0.3 . Les objets qui génèrent des artefacts seront
systématiquement placés dans une passe plus fine, évitant ainsi d’avoir à calculer toute la scène avec bcp de sample.
Mais je regarde aussi les ombres portées : un mur par exemple, va recevoir des ombres portées de tableaux qui sont posés
dessus ou encore d’objets à proximité. Ces ombres seront imprécises et floues avec un color treshold à 0.3.
C’est pour cela que je place généralement les murs dans une passe haute. (color thresh. entre 0.2 et 0.25) afin
que les ombres soient bien détaillées au plus proche d’un rendu en brute force.
Enfin je mettrai une exception à ces règles pour les plafonds en rendu d’intérieur, qui justement ne génèrent que très rarement
des artefacts et qui ne recoivent que très peu d’ombres portées. En revanche ils génèrent des splotches.
Il est alors plus judicieux de les laisser dans une passe basse très rapide et de booster le gi subdiv multiplier
des properties qui permettront de gommer les splotches. De même pour les végétaux et les vitres dont je baisse les subdiv de gi mais
que je laisse dans une passe basse. En espérant t’avoir aidé. Cordialement
nickel merci!
Bonjour,
Fantastique script, merci beaucoup pour cette apport.
J’ai juste une question, comment peut-on intégrer le script à l’utilisation de Backburner ?