Dreamworks heeft het MoonRay-weergavesysteem open source gemaakt

Animatiestudio Dreamworks heeft het MoonRay-renderingsysteem open source gemaakt, dat gebruik maakt van ray tracing op basis van Monte Carlo numerieke integratie (MCRT). Het product werd gebruikt om de animatiefilms “How to Train Your Dragon 3”, “The Croods 2: Housewarming Party”, “Bad Boys”, “Trolls” weer te geven. World Tour", "The Boss Baby 2", "Everest" en "Puss in Boots 2: The Last Wish". De code wordt gepubliceerd onder de Apache 2.0-licentie en zal binnen het OpenMoonRay-project verder worden ontwikkeld als open source-product.

Het systeem is helemaal opnieuw ontwikkeld, bevrijd van de afhankelijkheid van verouderde code en is klaar voor het maken van professionele werken, zoals speelfilms. De initiële ontwerpfocus lag op hoge efficiëntie en schaalbaarheid, inclusief ondersteuning voor multi-threaded rendering, parallellisatie, vectorgebaseerde instructie (SIMD), realistische lichtsimulatie, GPU- of CPU-side ray-verwerking, realistische op path tracing gebaseerde lichtsimulatie, rendering volumetrische structuren (mist, vuur, wolken).

Om gedistribueerde weergave te organiseren, gebruiken we ons eigen Arras-framework, waarmee we berekeningen over meerdere servers of cloudomgevingen kunnen verspreiden. De Arras-code zal open source zijn, samen met de belangrijkste MoonRay-codebasis. Om verlichtingsberekeningen in gedistribueerde omgevingen te optimaliseren, kan de Intel Embree ray tracing-bibliotheek worden gebruikt, en kan de Intel ISPC-compiler worden gebruikt om shaders te vectoriseren. Het is op elk moment mogelijk om het renderen te stoppen en de bewerkingen vanaf de onderbroken positie te hervatten.

Het pakket bevat ook een grote bibliotheek met Physically Based Rendering (PBR)-materialen die zijn getest in productieprojecten, en een USD Hydra Render Delegates-laag voor integratie met bekende USD-compatibele systemen voor het maken van inhoud. Het is mogelijk om verschillende modi voor het genereren van afbeeldingen te gebruiken, van fotorealistisch tot zeer gestileerd. Met ondersteuning voor gedistribueerde weergave kunnen animators het resultaat interactief volgen en tegelijkertijd meerdere versies van de scène weergeven met verschillende lichtomstandigheden, verschillende materiaaleigenschappen en vanuit verschillende gezichtspunten.



Bron: opennet.ru

Voeg een reactie