Sparse Voxel Octree ( SVO , rusky Sparse voxel octree ) je softwarová technologie , která umožňuje efektivně zpřesňovat vykreslené objekty a efektivně zpracovávat mračna bodů .
SVO je pravidelná hierarchická datová struktura založená na pravidelné 3D mřížce. První uzel stromu, root , je krychle obsahující celý objekt. Každý uzel má buď 8 dětí, nebo žádné děti. Těchto 8 dětí tvoří 2x2x2 pravidelné pododdělení nadřazeného uzlu. Uzel s dětmi se nazývá vnitřní uzel , uzel bez potomků se nazývá list . V důsledku všech dělení se získá pravidelná trojrozměrná mřížka voxelů, avšak ne všechny voxely obsahují části objektu, proto takové voxely nebudou obsaženy ve vytvořeném stromu , to znamená, že strom bude řídký. . Aby se pokaždé nezpracovával prázdný voxel, používá se místo mřížky oktree , má také informace o indexování voxelů a umožňuje optimálně najít sousedy voxelů a další informace.
"Sparse Voxel Octree" se používá jako datová struktura v herním enginu " CryEngine 3 " německé společnosti Crytek . Na rozdíl od svého klasického účelu se v CryEngine 3 SVO nepoužívá k ukládání voxelů, ale k ukládání polygonů a „vypečené“ geometrie a textur úrovně při jejím exportu. Crytek zvolil technologii SVO, protože na rozdíl od virtuálních textur nevyžaduje výpočty GPU, poskytuje automatické a správné vytváření úrovní detailů (LOD) , poskytuje možnost vytvářet adaptivní geometrické a texturové detaily v závislosti na hře a také díky tomu je pro ni velmi snadné spravovat a streamovat geometrii a textury (jejich načítání v reálném čase za běhu aplikace). Byly však zaznamenány velké požadavky na paměť pro SVO. Aby Crytek tento nedostatek odstranil, použil agresivní kompresi textur a aplikoval SVO nikoli na celou úroveň, ale pouze na její určité části. [jeden]
Podle Cryteku se může „Sparse Voxel Octree“ spolu s „Sparse Surfel Octrees“ v budoucnu stát jednou z klíčových technologií pro ukládání a prezentaci dat v počítačové grafice v reálném čase. Byly zdůrazněny jeho hlavní výhody a nevýhody. [jeden]
Výhody [1] :Strom (datová struktura) | |
---|---|
Binární stromy | |
Samovyrovnávací binární stromy |
|
B-stromy |
|
předponové stromy |
|
Binární dělení prostoru | |
Nebinární stromy |
|
Rozbití prostoru |
|
Jiné stromy |
|
Algoritmy |
|