Moteurs de rendu GPU

Etat des lieux

Les premières années furent difficiles pour les moteurs GPU. Sueurs froides à chaque mise à jour des drivers, stress au lancement des rendus en craignant que la mémoire vive soit insuffisante et fonctionnalités limitées n’ont pas permis un passage serein vers ces nouveaux moteurs. Puis peu à peu les moteurs GPU se sont imposés en production grâce notamment à leur performance en terme de vitesse, l’amélioration de leur stabilité et l’augmentation des capacités -vitesse et mémoire- des cartes graphiques. Ils sont maintenant bien intégrés dans de nombreux studios. Passons en revue l’offre de différents éditeurs. Je ne parlerai ici que des moteurs ayant une connexion à un modeleur.

On peut découper l’offre en deux : les moteurs uniquement GPU et les moteurs “historiques” CPU qui ont eu ou auront un portage GPU.

Commençons par les purs GPU :

C’est une référence dans le monde du rendu GPU. La société OTOY fourmille d’idées et de projets et parfois j’avoue que j’ai un peu de mal à voir où ils souhaitent nous amener. Octane est très réactif et offre une très belle qualité de rendu. La qualité de l’intégration dans les softs de modélisation est variable, malgré tout Octane reste une valeur sûre pour ceux qui veulent un moteur non biaisé GPU généraliste, plutôt facile à prendre en main et déjà éprouvé par de nombreux utilisateurs.

Octane Render

Redshift se positionne un peu à l’inverse du marché actuel en clamant qu’il est un “biased renderer”. Cela le rend très souple et offre des possibilités de paramétrages et d’optimisation de rendus que d’autres moteurs n’ont pas. J’étais un peu inquiet à la suite de son rachat par Maxon (éditeur de Cinema 4D) en avril dernier, mais jusqu’à présent, je dois dire que Redshift garde son indépendance. Durant le dernier SIGGRAPH, Redshift nous a rapidement présenté un RedshiftRT encore beaucoup trop jeune pour une release même en Beta. Cependant cela nous montre le chemin emprunté par l’équipe de développement : plus d’interactivité durant la préparation des scènes. Vous avez des animations à rendre et vous aimez mettre les mains dans les paramétres : Redshift est pour vous.

Redshift

Je ne le cache pas, c’est mon petit chouchou pour le rendu GPU en archi. Disponible uniquement pour 3dsMax, il bénéficie d’une superbe intégration. Rapide, simple, robuste…, un développeur présent sur les réseaux et à l’écoute des utilisateurs. Pour l’instant c’est un sans faute. J’attends de voir l’ouverture à d’autres logiciels. Vous cherchez une alternative GPU à Corona ? Pourquoi pas FStormRender.

FStorm

Passons aux logiciels qui ont dû évoluer et passer en GPU.

Pas besoin de présenter ce mastodonte de la 3D. V-Ray sait tout faire. Chaos Group était attendu au tournant mais a réussi à produire un moteur GPU de qualité. Cependant il manque encore des features importantes et le passage des utilisateurs V-Ray CPU vers V-Ray GPU est plus lent que je ne l’imaginais. Ce n’est pas simple de porter plus de 20 ans de développements CPU sur GPU.

Avec la version 2.8, Blender nous avons scotché avec le moteur Eevee utilisé pour le viewport et une autre info importante était reléguée au second plan : l’ajout d’un mode hybride pour le moteur GPU (qui autorise donc l’utilisation du CPU comme le permet V-Ray par exemple). Le portage en GPU de Cycles (déjà présent sur les versions précédentes) se faisant presque à iso-features par rapport à la version CPU, on peut dire que c’est une belle réussite.

Cycles

D’autres sont encore au stade de développement :

Actuellement en version beta très avancée c’est aussi une conversion qui est attendue avec beaucoup d’impatience pour les utilisateurs. La volonté des développeurs est de gommer la frontière entre le CPU et le GPU en ayant le maximum de fonctions communes comme le SSS, les cheveux et poils, les effets atmosphériques… et ainsi permettre aux graphistes des temps de développement de scènes réduits. La beta est prometteuse, je suis très confiant de l’apport d’Arnold GPU pour notre productivité.

Arnold renderer
Arnold renderer 2

La version 4 devait être la conversion GPU de ce moteur. Mais de trop fortes limitations ont fait qu’il n’a pas été possible de l’utiliser en production. Depuis quelques jours le forum et les réseaux bruissent qu’une nouvelle version serait disponible bientôt. Espérons que le GPU soit totalement opérationnel.

Maxwell render

J’aimerais citer également 2 moteurs sur lesquels j’ai passé moins de temps :

Un peu moins présent sur la scène des moteurs de rendu, Indigo est un moteur entièrement tourné vers le photoréalisme avec les temps de calculs qui vont avec pour la version CPU. Le version GPU -utilisant OpenCL- est bien sûr beaucoup plus rapide. Pensez à lui pour des rendus de design produit par exemple.

Indigo renderer
  • AMD Radeon Prorender

Le moteur de rendu d’AMD, architecturé lui aussi autour d’OpenCL, permet l’utilisation commune des GPU et CPU. Je le trouve un petit peu en dessous des autres au niveau qualité des rendus mais il a l’avantage d’être gratuit et offre donc une alternative intéressante à Blender/Cycles. Il a aussi des connections vers des logiciels de modélisation délaissés par les autres moteurs (comme Z Emotion, InstaLOD ou Edificius).

Radeon Pro render

A venir :

Depuis le SIGGRAPH 2017, Pixar nous informe régulièrement sur l’avancée de la technologie de rendu hybride XPU (CPU+GPU) de Renderman. La première release en version test est prévue pour début 2020.

Pour aller plus loin :