A Sparse Voxel Octree ( SVO , orosz Sparse voxel octree ) egy szoftvertechnológia , amely lehetővé teszi a renderelt objektumok hatékony finomítását és a pontfelhők hatékony feldolgozását .
Az SVO egy szabályos hierarchikus adatstruktúra , amely egy szabályos 3D rácson alapul. A fa első csomópontja, a gyökér , egy kocka, amely a teljes objektumot tartalmazza. Minden csomópontnak vagy 8 gyermeke van, vagy nincs gyermeke. Ez a 8 gyermek a szülőcsomópont 2x2x2 szabályos alegységét alkotja. A gyermekekkel rendelkező csomópontot belső csomópontnak , a gyermekek nélküli csomópontot levélnek nevezzük . Az összes felosztás eredményeként szabályos háromdimenziós voxelrács jön létre, azonban nem minden voxel tartalmazza az objektum részeit, ezért az ilyen voxelek nem lesznek benne a létrehozott fában , vagyis a fa ritka lesz . Annak érdekében, hogy ne dolgozzanak fel minden alkalommal egy üres voxelt, egy oktrát használnak rács helyett , emellett információkat tartalmaz a voxelindexelésről, és lehetővé teszi a voxel szomszédok és egyéb információk optimális megtalálását.
A "Sparse Voxel Octree" adatstruktúraként szolgál a német Crytek cég " CryEngine 3 " játékmotorjában . Klasszikus rendeltetésétől eltérően a CryEngine 3-ban az SVO nem voxelek tárolására szolgál, hanem poligonok és a szint "sütött" geometriájának és textúrájának tárolására az exportálás során. A Crytek azért választotta az SVO technológiát, mert a virtuális textúrákkal ellentétben nem igényel GPU-számítást, automatikus és helyes részletszintek (LOD) létrehozását teszi lehetővé, lehetőséget biztosít adaptív geometriai és textúrarészletek létrehozására a játékmenettől függően , valamint ennek köszönhetően. nagyon könnyen kezelheti és streamelheti a geometriát és a textúrákat ( valós időben tölti be őket, miközben az alkalmazás fut). Az SVO-hoz azonban nagy memóriaigényt észleltek. Ennek a hiányosságnak a kiküszöbölésére a Crytek agresszív textúra-tömörítést alkalmazott, és az SVO-t nem a teljes szintre, hanem annak csak bizonyos részeire alkalmazta. [egy]
A Crytek szerint a "Sparse Voxel Octree" és a "Sparse Surfel Octrees" a jövőben az adatok valós idejű számítógépes grafikában való tárolásának és megjelenítésének egyik kulcsfontosságú technológiájává válhat. Kiemelték fő előnyeit és hátrányait. [egy]
Előnyök [1] :Fa (adatstruktúra) | |
---|---|
Bináris fák | |
Önkiegyensúlyozó bináris fák |
|
B-fák | |
előtag fák |
|
A tér bináris particionálása | |
Nem bináris fák |
|
A tér felosztása |
|
Más fák |
|
Algoritmusok |
|