Azienda Intel notevole rilascio di un motore di rendering 3D scalabile , progettato per la visualizzazione realistica e di alta qualità tramite ray tracing, adatto per applicazioni interattive. Il motore si sviluppa come parte di un progetto più ampio , mirato allo sviluppo di strumenti per la visualizzazione scientifica basata su software (Software Defined Visualization), comprendente una libreria di ray tracing , un sistema di rendering fotorealistico , una libreria per la riduzione del rumore nelle immagini e un sistema di rasterizzazione basato su software . Il codice è scritto in C++ e sotto licenza Apache 2.0.
OSPRay è principalmente destinato all'uso in applicazioni interattive per il rendering in tempo reale della scena. Per simulare il comportamento della luce viene utilizzato il metodo . È supportata la visualizzazione volumetrica e piana, l'illuminazione globale fotorealistica Ambient occlusion«).
OSPRay utilizza solo le capacità della CPU, senza dipendere dalla GPU, consentendo l'uso della libreria su una vasta gamma di dispositivi, dalle workstation ai nodi nei cluster computazionali. Per garantire prestazioni adeguate viene attivamente utilizzata la multithreading e la vettorizzazione basata su istruzioni SIMD, come Intel SSE4, AVX, AVX2 e AVX-512 (per eseguire OSPRay è richiesta almeno la compatibilità con SSE4.1).
Il rendering può essere distribuito su più nodi del cluster (supporto per MPI), il che consente, ad esempio, di utilizzare OSPRay per organizzarne il rendering di immagini ad altissima risoluzione su , dove un'unica immagine è formata da un insieme di pannelli LCD separati. Ad esempio, il funzionamento di OSPRay è stato dimostrato su uno schermo composito , composto da 80 monitor da 30 pollici (risoluzione totale di 40960×8000 o 328 megapixel) e servito da un cluster di 40 server con CPU a 6 core basate sulla microarchitettura Intel Sandy Bridge.
Il cambiamento significativo del numero di versione è dovuto a una grande ristrutturazione dell'API, comprese modifiche che rompono la compatibilità (per facilitare la transizione al nuovo API è stata proposta una libreria intermedia che agevola la migrazione) e l'introduzione di nuovi tipi geometrici. È stato aggiunto il supporto per Open VKL (Open Volume Kernel Library) per il rendering volumetrico. È stata implementata la possibilità di collegare per la soppressione del rumore nelle immagini. La libreria ospcommon e il modulo per il supporto MPI sono stati trasferiti in repository separati.
Fonte: opennet.ru
