Une histoire d’USD, d’Hydra et de la puissance pure…
Pourquoi la sortie de MoonRay par DreamWorks sous la licence open source Apache s’apparente à Panavision donnant des DXL Millennium avec les plans.
Dans les années 90, quand quelqu’un mentionnait « RenderMan », la plupart pensaient à un moteur de rendu de Pixar. En réalité cependant, RenderMan n’était pas du tout un moteur de rendu, mais plutôt une norme ouverte pour les moteurs de rendu ; La version de Pixar s’appelait PhotoRealistic RenderMan (PRMan).
Le cœur de la norme RenderMan était un langage de description de scène et un langage de shader. Étant ouvert, toute personne développant un moteur de rendu pourrait écrire un analyseur pour les deux, et toute personne développant un système d’animation 3D pourrait implémenter un exportateur pour eux.
Le logiciel open source est une bête très différente. L’une des applications open source les plus connues sur Internet est Blender3D. Tout le monde peut télécharger le code source de Blender, y compris le moteur de rendu Cycles très apprécié. Certains studios ont même profité de la nature open source de Blender pour le personnaliser pour leurs propres pipelines de production internes.
En raison de la licence sous laquelle Blender est publié, malgré d’énormes financements de sociétés comme Epic, Ubisoft et Bethesda, l’application est toujours entièrement open source. Le rythme des améliorations de Blender rivalise désormais avec celui de DaVinci Resolve, mais le code source reste disponible gratuitement.
USD et Hydra : normes ouvertes
Pixar a développé une nouvelle norme pour les systèmes d’animation 3D afin de partager des données appelée USD : Universal Scene Description. Parallèlement à cela, il y a l’Open Shading Language (OSL) et la spécification MaterialX d’ILM. Une partie de la spécification comprend ce qu’on appelle un USD Hydra Delegate, qui est une idée beaucoup plus simple qu’il n’y paraît ; c’est essentiellement une interface de plug-in pour un moteur de rendu.
SideFX Software a intégré USD très tôt et en a maintenant une implémentation mature et prête pour la production dans Solaris, qui est un espace de travail Houdini conçu pour l’assemblage de scènes, le développement de l’apparence, l’éclairage et le rendu. Étant donné que Solaris est basé sur USD, il peut être rendu à n’importe quel délégué Hydra. Du point de vue de l’utilisateur, changer de moteur de rendu ne nécessite pas plus d’efforts que de déposer un nœud approprié dans l’environnement Solaris.
Houdini a maintenant deux moteurs de rendu de production. L’un est l’ancien Mantra, uniquement CPU, qui est bien respecté pour la qualité de l’image, les fonctionnalités et la robustesse. Il n’utilise cependant pas le calcul GPU, il est donc bien en deçà de la plupart de ses contemporains dans le domaine de la vitesse grâce à l’augmentation fulgurante de la puissance de calcul GPU ces dernières années. La deuxième option désormais disponible est Karma, qui est plus rapide que Mantra mais qui inclut surtout une option XPU qui utilise à la fois le calcul CPU et GPU. Karma est également un délégué USD Hydra avec prise en charge (bêta) des shaders MaterialX.
Pour SIGGRAPH 2022, quelques développeurs d’Intel ont implémenté un prototype de délégué USD Hydra en utilisant le système de rendu open source Embree d’Intel. En tant que délégué Hydra, il siège à Solaris, tout comme Karma, ce qui permet à Intel de nous taquiner avec la puissance de son GPU de nouvelle génération.
Parce que USD est un standard ouvert, un certain système d’animation 3D open source bien connu et apprécié le prend également en charge : Blender. AMD a implémenté la prise en charge complète des délégués USD Hydra comme l’une des fonctionnalités de ProRender pour Blender.
Entrez MoonRay
Dreamworks est bien connu pour son animation stylisée, mais le studio réalise également des effets visuels photoréalistes pour le cinéma, les publicités et la télévision. Plutôt que de compter sur un 3rd moteur de rendu de production de fête, DreamWorks a développé le sien en interne.
Appelé MoonRay, DreamWorks in house renderer est un traceur de chemin distribué à la pointe de la technologie. Il prend en charge la liste habituelle de fonctionnalités telles que Cryptomatte et la sortie profonde, une suite flexible et extensible de shaders superposables, de filtres de lumière, de rendu volumétrique et de filtres de lumière.
Bien que les fonctionnalités de rendu en elles-mêmes ne distinguent pas MoonRay d’Arnold, V-Ray, Redshift et même Cycles, il existe quelques domaines dans lesquels MoonRay est en tête du peloton.
Le premier est son mode XPU. L’un des défis auxquels sont confrontés les développeurs de moteurs de rendu est que les CPU et les GPU gèrent les mathématiques légèrement différemment. Alors que dans un monde purement entier, il n’y aurait pas de différences, ce n’est pas le cas en virgule flottante ; il est tout à fait possible que deux processeurs différents exécutent exactement les mêmes instructions et aboutissent à des résultats différents. Étant donné qu’il existe des normes pour l’arithmétique en virgule flottante définies par l’IEEE, la nature de l’arithmétique en virgule flottante rend presque impossible pour chaque architecture de calcul de fournir des résultats identiques. Les différences ne sont en aucun cas importantes, elles sont généralement limitées aux dernières décimales de chaque opérande, mais au cours de plusieurs itérations, elles peuvent s’additionner. Si chaque nœud est identique, il n’y a pas de quoi s’inquiéter, mais si le GPU exécute 200 itérations d’un shader et que le CPU exécute les 200 autres, alors les deux ensembles de pixels résultants peuvent sembler suffisamment différents pour se manifester comme un problème de rendu .
Pour cette raison, la plupart des systèmes de rendu accéléré par GPU sur le marché utilisent actuellement soit le CPU, soit le GPU, et rarement les deux. Dans la plupart des cas, « les deux » signifie rendre sur le CPU, puis utiliser le GPU pour les filtres de sortie comme la réduction du bruit, de sorte que le problème des différences d’arrondi affecte l’image entière, et d’une manière cohérente tout au long d’une séquence d’images.
SideFX et Isotropix travaillent sur des moteurs de rendu XPU qui peuvent utiliser à la fois le CPU et le GPU pour restituer une image avec une précision parfaite au pixel près, de sorte qu’il n’y aura aucune différence entre les pixels rendus sur le GPU et les pixels rendus sur le CPU.
DreamWorks est déjà là avec MoonRay ; son mode XPU est capable d’utiliser le GPU comme nœud de calcul supplémentaire, au lieu de seulement comme une étape dans le processus de rendu.
C’est en fait plus important qu’il n’y paraît au premier abord, car le rendu GPU fonctionne assez mal à moins que la scène entière et toutes ses textures ne puissent résider dans la mémoire du GPU. Être capable d’équilibrer efficacement la charge de l’effort de rendu sur le CPU et le GPU est un gros problème pour les performances, car cela permet au moteur de rendu d’augmenter les performances en utilisant le GPU mais sans être limité par la mémoire du GPU.
L’autre ensemble de fonctionnalités de bannière de MoonRay est également axé sur les performances. Il est vectorisé de bas en haut, et ce depuis le début du développement. MoonRay utilise Embree d’Intel pour le lancer de rayons, ainsi que l’intégrateur de rayons vectorisés et les moteurs d’ombrage et de texturation de DreamWork.
L’autre côté de l’ensemble de fonctionnalités de performance de MoonRay est son cadre de rendu distribué basé sur le cloud appelé Arras. Le SDK Arras est conçu pour simplifier la connexion à une ferme de rendu, et également pour intégrer MoonRay à une application cliente. Les démos MoonRay montrent des exemples d’artistes travaillant de manière interactive dans Houdini connectés à un cluster MoonRay à 32 nœuds qui utilise le GPU système pour le débruitage, et le résultat est un rendu de fenêtre d’affichage interactif ultra-rapide, une formidable aubaine pour le développement du look.
Une autre caractéristique de MoonRay est qu’il prend en charge la norme Hydra Render Delegate, de sorte que les artistes prêts à l’emploi avec des applications comme Houdini et Katana pourront utiliser MoonRay comme moteur de rendu interactif et de production.
Les clés du royaume
Étant donné que DreamWorks publie MoonRay sous la licence open source Apache et que la spécification USD Hydra est ouverte, attendez-vous à voir MoonRay un peu partout dans un proche avenir.
Le choix d’un moteur de rendu pour un projet d’animation s’apparente au choix d’une caméra pour un projet de film, comme Eevee pour un travail interactif en temps réel, ce qui le rend idéal pour le développement de l’apparence et Cycles pour le rendu final afin de tirer parti de la sortie tracée par rayons basée physiquement.
Dans cette analogie, la sortie de MoonRay par DreamWorks sous la licence open source Apache s’apparente à Panavision donnant des Millennium DXL, ainsi que les plans.
DreamWorks utilise MoonRay sous Linux, donc les ports Windows et OSX sont actuellement en version bêta limitée. Certains développeurs d’applications travaillent également déjà sur l’intégration de MoonRay dans leur logiciel.
Comme il est en test bêta, DreamWorks n’a pas encore de calendrier pour la publication de MoonRay au public, mais il y a fort à parier qu’il deviendra très populaire très rapidement lors de son lancement et élèvera la barre pour les moteurs de rendu tiers.
La première action d’un film d’entreprise dans votre procédure de communication.
Vous avez une idée explicite ou pas de votre maquette de clip institutionnel pour amplifier votre développement, demandez à un spécialiste pour la rédaction du scénario du clip et la fabrication phase par phase de votre vidéo.
Informations complètes à propos des vidéos institutionnellesen retrouvant les actualités page « une ». Nous assurons la construction de votre clip pièce par pièce jusqu’à la post-création et la publication finale de la vidéo institutionnelle.
Bibliographie :
After effects CC 2019).,Clicker Ici .