Azienda Intel notevole rilascio di un motore di rendering 3D scalabile , progettato per la visualizzazione realistica ad alta qualità mediante tracing dei raggi, adatto all'uso in applicazioni interattive. Il motore è in sviluppo come parte di un progetto più ampio , mirato allo sviluppo di strumenti di visualizzazione software per calcoli scientifici (Software Defined Visualization), che includono una libreria di tracing dei raggi , un sistema di rendering fotorealistico , una libreria per la riduzione del rumore nelle immagini e un sistema di rasterizzazione 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 si utilizza il metodo . Supporta la visualizzazione volume e su piano, illuminazione globale considerando le proprietà fisiche dei materiali, effetti di ombreggiatura avanzati (ombre, trasparenza e ombreggiatura “«).
OSPRay utilizza solo le capacità della CPU, senza dipendere dalla GPU, il che consente di utilizzare la libreria su una vasta gamma di dispositivi, dalle workstation ai nodi nei cluster di calcolo. Per garantire prestazioni adeguate, vengono utilizzati attivamente il multithreading e la vettorizzazione basata su istruzioni SIMD, come Intel SSE4, AVX, AVX2 e AVX-512 (per l'uso di OSPRay è richiesta almeno la compatibilità con SSE4.1).
Il rendering può essere distribuito su più nodi di un cluster (supporta MPI), il che consente, ad esempio, di utilizzare OSPRay per organizzare il rendering di immagini ad altissima risoluzione su , un'unica immagine su cui è 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 gestito da un cluster di 40 server con CPU a 6 core basate sull'architettura Intel Sandy Bridge.
Un cambiamento significativo del numero di versione è dovuto a una grande revisione dell'API, inclusi i cambiamenti che rompono la compatibilità (per semplificare 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 nell'immagine. Sono state estratte in repository separati la libreria ospcommon e il modulo per il supporto di MPI.
Fonte: opennet.ru
