PDA

Voir la version complète : Augmentation temps de rendu sur transparence



ld
09/01/2015, 09h32
Bonjour,

Je suis sur la r16 et j'utilise le moteur physique de c4d. je ne comprend pas pas pourquoi mes temps de rendu augmentent de façon exponentielle lorsque certains objets deviennent transparent (utilisation du tag de visibilité avec le nouveau canal de réflexion).
Les rendus sont de 50" à 1'30 selon les images, et dès que les transparences commencent à être calculées ça explose du genre 50'!
Quelqu’un a t-il eu ce genre de problème? et comment peut-on y remédier.

rik25
09/01/2015, 17h04
Tu as essayé avec le moteur classique ?

ld
10/01/2015, 00h44
Avec le moteur classique certaines fonctionnalités du nouveau canal de réflexion fonctionnent mal comme la rugosité qui scintille énormément.
J'ai trouvé une solution qui n'est pas très orthodoxe mais qui fonctionne.

Sur les transparence je désactive/active les calques de réflexion et de spécularité dans le matériau de façon synchrone avec l’utilisation du tag de visibilité, ça diminue fortement les temps de rendu tout en redonnant des transitions visuellement correctes.
Ce n'est qu'un pis aller, mais ça fonctionne.

ld
10/01/2015, 19h00
Bon, sinon personne n'a un p'tit bout de piste pour m'aiguiller dans la bonne direction?

bru
10/01/2015, 19h24
Je te dirais qu'il est tout à fait naturel que les temps de rendu grimpent une fois que l'on active des transparences et/ou des réflexions. Il ne faut pas oublier que chaque fois qu'un rayon rencontre une surface de ce type, un nouveau doit être calculé. Si celui-ci rencontre encore une surface, il y en a encore un nouveau, etc. Donc n rayons à calculer au lieu d'un.

Si les réflexions ou les transparences sont floues, cela devient encore plus colossal, puisqu'à chaque "collision", un grand nombre de rayons doivent être générés. S'il y a des réflexions multiples, la charge de calcul augment exponentiellement !

Maintenant, cela dépend beaucoup de ta scène et de ce que des éléments réflectifs ou transparents soient visibles à travers d'autres.

Note que ceci est une généralité. Ce sera sans doute tout à fait similaire avec différents moteurs de rendu. Néanmoins, j'ai constaté que le moteur physique est beaucoup plus performant que le moteur classique dans ce genre de cas.

Pour réduire le temps de rendu, tu peux agir dans les paramètres de rendu, sur les paramètres "ombres max", "réflexions max" et surtout "rayon max". Ces paramètres sont dans l'onglet "options". Si tu réduis ces paramètres, des zones noires ou sombres peuvent apparaître dans les objets avec des réflexions multiples ou des ombres peuvent être un peu incorrectes. Mais, si tu n'utilises pas uniquement des transparences ou des réflexions totales et que ton image n'est pas une forêt de cristaux, il y a souvent moyen de bien accélérer les choses en réduisant leurs valeurs.

ld
11/01/2015, 01h17
Merci pour ta réponse Bru,

Il y a effectivement des éléments transparents à l'intérieur d'autres éléments transparent, ce qui complique beaucoup les calculs et donc les rallonge.
Mais au delà de ça les objets qui apparaissent et disparaissent progressivement ont un comportement curieux. Ils deviennent lumineux. Cela est visiblement lié au nouveau canal de réflexion.
il faudra encore du temps avant d'arriver à une certaine maitrise pour pouvoir l'utiliser en production. La seule solution que j'ai trouvé pour l'instant, je l'explique plus haut, c'est de diminuer jusqu'à les supprimer complètement les réflexions sur les objets concernés.
Les temps de calcul s'ils restent longs deviennent tout de même plus gérables.
Je vais faire des essais plus poussés avec les nouveaux modes d'ombrage (Beckmann, ggx, ward et Lambert)