Princip animace je jednoduchý - všechny pohybové fáze jsou v podobě
skupin součástí jednoho modelu. Jediným problémem tedy je to, jak
jednotlivé fáze přepínat co nejefektivněji jen s minimální zátěží
počítače. Při rozběhu aplikace jsou v proceduře OnStartup
všechny skupiny jedné animační fáze zaregistrovány do zvolené kořenové
skupiny. Vzniknou tak stromové hierarchické struktury vybraných
skupin. Poté jsou jména těchto kořenových skupin převedena na číselné
identifikátory (handles) a uložena do polí pro snadnou animaci v
cyklech. Pak již stačí jen vypínat a zapínat zobrazování patřičných
kořenových skupin. V naší aplikaci pak virtuální pacient může dýchat a
zavírat i otevírat oči.
Vykreslovací systém v prostředí Control Web může veškerá data 3D
scén, kterými jsou např. souřadnice vertexů, polygony, normály,
texturové souřadnice i vlastní obrazová data textur, ukládat do
grafické paměti, kde k nim má přímý a velmi rychlý přístup přímo
grafický procesor. Tento přístup navíc nijak nezatěžuje procesor,
paměť ani sběrnice počítače.
V našem případě je efektivita a výkon klíčový, neboť model nepatří
mezi nejmenší. Obsahuje 1503535 vertexů a k nim příslušný počet normál
a texturových souřadnic, 2906498 povrchových trojúhelníků a 358, často
texturovaných, materiálů. To vše je členěno do 1889 skupin. V případě
aplikace s rozšířenou realitou vše musí být zvlášť vykreslováno pro
levé a pravé oko. Složitost scény je zřejmě již za možnostmi
grafického systému náhlavních sad HoloLens. V prostředí systému
Control Web je i s již mírně obstarožním grafickým adaptérem NVidia
1080 vše vykreslováno s frekvencí cca 110 FPS. Hotový obraz je pak po
kompresi videokodekem H265 přenášen do brýlí HoloLens prostřednictvím
Wi-Fi.
Takto jsou modely scény v rozšířené realitě překrývány
reálnými objekty prostředí
Toto řešení dobře ukazuje jak široký rozsah funkčnosti, tak i
vysoký výkon grafického vykreslovacího systému v aplikačním prostředí
Control Web.
Roman Cagaš
|