Intel heeft de release van OSPRay Studio 1.0 aangekondigd, een applicatie voor interactieve 3D-visualisatie met behulp van de gedistribueerde ray tracing-engine OSPRay. De software kan onder andere worden gebruikt voor hoogprecisie rendering van complexe scènes en het verwerken van zeer grote scènes die gedistribueerde uitvoering van berekeningen vereisen in een cluster van meerdere computers. De applicatiecode is geschreven in C++ en wordt verspreid onder de Apache 2.0-licentie. Voor het weergeven op het scherm wordt gebruikgemaakt van OpenGL en de GLFW-bibliotheek.
De scène die gerenderd moet worden, kan worden geladen in gangbare indelingen of worden gemaakt met behulp van scene graph-nodes. Import van modellen in het MTL-formaat met materialen voor fotorealistische rendering, 3D-animaties in glTF-indeling, texturen in UDIM-indeling, volumetrische spaarzame deeltjes (zoals wolken) in VDB-indeling, puntwolkgegevens in PCD-indeling en verlichtingsprofielen in EULUMDAT-indeling (.ldt) worden ondersteund. De toestand van de scene graph kan worden opgeslagen of geladen in JSON-indeling.
Uitgebreide functionaliteit, widgets voor de gebruikersinterface en datanode-importhandlers kunnen worden aangesloten als plugins. Bijvoorbeeld, plugins voor visualisatie van medische gegevens in DICOM-indeling, generatie van landschappen op basis van hoogtekaarten, verwerking van grote groepen standaardobjecten (gras, bomen), simulatie van astronomische evenementen, visualisatie van wetenschappelijke gegevens in VTK-indeling, enzovoort, zijn beschikbaar.
Voor de simulatie van lichtgedrag wordt het path tracing-methodologie ondersteund. Visualisatie kan plaatsvinden in volume of op een vlak. Fotorealistisch globaal verlichting wordt ondersteund met inachtneming van de fysieke eigenschappen van materialen en uitgebreid schaduweffecten (schaduwen, transparantie en Ambient occlusion). Het is mogelijk om scripts te maken voor het uitvoeren van batchbewerkingen, bijvoorbeeld voor het renderen van afbeeldingen op een systeem zonder monitor, het selecteren van gebieden voor rendering, en het instellen van camera- en renderparameters en scènes.
In de nieuwe versie van OSPRay Studio:
- Ondersteuning voor functionaliteit van de OSPRay-engine, geïntroduceerd in release 3.1, is toegevoegd.
- De gebruikersinterface heeft ondersteuning gekregen voor extra materialen die in de OSPRay-engine worden ondersteund.
- Ondersteuning voor de OpenEXR API v2.x en v3.x is toegevoegd.
- Er is een mogelijkheid voor het asynchroon vaststellen van bestandwijzigingen voor automatische tekstuurupdates.
- In de API voor plug-ins is de toegang tot de klassen MainWindow en ArcballCamera geïmplementeerd.
- In de batchmodus is ondersteuning voor gedistribueerde rendering met MPI beschikbaar.
Daarnaast is er een paar dagen geleden een nieuwe versie van de 3D-renderengine OSPRay 3.1 gepubliceerd, die wordt gebruikt in OSPRay Studio 1.0. De engine ontwikkelt zich als onderdeel van een groter project van het Intel Rendering Framework, dat gericht is op het ontwikkelen van softwaretools voor de visueelisering van wetenschappelijke berekeningen SDVis (Software Defined Visualization), inclusief de ray tracing-bibliotheek Embree, het systeem voor fotorealistische rendering GLuRay, de bibliotheek voor het verwijderen van ruis in afbeeldingen oidn (Open Image Denoise) en het systeem voor softwarematig rastreren OpenSWR. De code is geschreven in C++ en gepubliceerd onder de Apache 2.0-licentie.
OSPRay is voornamelijk gericht op gebruik in interactieve toepassingen voor real-time scène rendering. De engine kan werken zonder gekoppeld te zijn aan een GPU, waardoor de bibliotheek op een breed scala aan apparaten kan worden gebruikt, van werkstations tot nodes in rekenclusters. Voor de juiste prestaties wordt actief gebruikgemaakt van multithreading en vectorisatie op basis van SIMD-instructies, zoals Intel SSE4, AVX, AVX2 en AVX-512. Rendering kan worden verdeeld over meerdere cluster nodes (MPI wordt ondersteund), wat OSPRay bijvoorbeeld in staat stelt om afbeeldingen met een zeer hoge resolutie te renderen op videowalls, waarbij één afbeelding wordt samengesteld uit een reeks afzonderlijke LCD-panelen.
Onder de verbeteringen in OSPRay 3.1:
- Ondersteuning voor het gebruik van emissietexturen met lichtgevende materialen.
- Nieuwe ondersteunde sferische objecten zijn toegevoegd: 'disk' (OSP_DISC) en 'gericht disk' (OSP_ORIENTED_DIS).
- Er zijn spiegelreplicatie- en textuuroverlays voor de randen (edge texture wrap) toegevoegd.
- Voor alle texturen is ondersteuning voor de OSPTextureWrapMode toegevoegd.
- Volledige ondersteuning voor textuurverpakking in glTF-formaat is verzekerd.
- Ondersteuning voor ruisonderdrukking en tooncorrectie voor gegevens in de buffer is toegevoegd.
- Bij gebruik van de GPU is ondersteuning voor motion blur van bewegende objecten gerealiseerd.
Bron: opennet.ru
