Tento článok obsahuje informácie o systéme CaveRehab, ktorý je zameraný na použitie virtuálnej jaskyne LIRKIS CAVE v rehabilitačných, terapeutických alebo tréningových procesoch. Virtuálna jaskyňa je jednou z mnoho virtuálno-realitných technológií, ktoré sú rozšírené v oblastiach ako napríklad zábavný priemysel, tréning simulovaných situácií rôznych povolaní a medicína alebo vzdelávanie. Zameranie tohto systému je použitie v procesoch rehabilitácie u pacientov s rôznymi postihnutiami. V článku sa nachádzajú informácie o používaní tohto systému a jeho výhodách.
Použité virtuálno-realitné technológie
Virtuálna jaskyňa, ktorá sa nachádza na pôde TU v Košiciach využíva zmiešanú realitu na vytvorenie reálneho zážitku pre používateľa. Systém CaveRehab využíva túto virtuálnu jaskyňu ako výstupné zariadenie pre imerzívne zobrazovanie testov na hernej báze s pokrytím približne 270° zorného poľa používateľa. Scéna virtuálnej jaskyne je tvorená na základe výstupu herného jadra.
Zároveň sa využíva stereoskopické zobrazovanie scény so zachytávaním pohybu používateľa. Konkrétne ide o systém OptiTrack, v ktorom sníma osem infračervených kamier značky na okuliaroch používateľa, podľa ktorých upravuje zobrazovanie v reálnom čase.
Výpočtové jadro jaskyne sa skladá z počítačového klastra, pre výpočty a generovanie scény pre zobrazenie a riadiacej jednotky. Systém CaveRehab využíva pre komunikáciu s počítačovým klastrom zdieľaný priestor aby nezaťažoval výpočtové jadro systému virtuálnej jaskyne.
Scéna virtuálnej jaskyne
Generovanie scény pre virtuálnu jaskyňu je realizované použitím systému SuperEngine od spoločnosti Slovakia Supercomputers.
![](1557826112767_superengine.png)
SuperEngine riadi pripojenie k zobrazovaciemu jadru jaskyne a tiež spracováva zdrojové kódy pre scénu, vytvorené v skriptovacom jazyku Ruby. Pri tvorbe scény sú s použitím tohto systému určité obmedzenia, z ktorých je najzávažnejším neschopnosť odstraňovať objekty vytvorené v scéne. V spojení s nie najrýchlejšou tvorbou objektov je v scénach systému CaveRehab využívané vytvorenie všetkých objektov pri inicializácii scény a následne sú už iba upravované parametre objektov, presnejšie viditeľnosť. Tento spôsob je zvolený z dôvodu, že herné jadro systému obsahuje hry ako Tetris a Snake, ktorých herný svet je zložený z väčšieho počtu jednoduchých objektov.
Herné jadro systému
Ako je už spomenuté vyššie, herné jadro obsahuje hry Tetris a Snake, pre ktoré je vytvorená 2D aj 3D verzia. Tieto hry sú tvorené ako konzolové aplikácie v programovacom jazyku C++. Rozdiely medzi danými verziami sú hlavne v ovládaní, na ktoré sa aktuálne používa klávesnica a v spracovaní rotácie tetromina (2D) a tetracuby (3D) pre Tetris.
Na ovládanie pohybu v priestore je v hre Snake použitá kombinácia tlačidiel WASD pre 2D verziu s rozšírením o posun smerom dozadu a dopredu použitím tlačidiel E a X pre 3D verziu. V hre Tetris je pohyb kociek založený na posune doprava a doľava v 2D verzii s rozšírením o posun dopredu a dozadu v 3D verzii. Tieto posuny sú ovládané šípkami klávesnice a v oboch verziách slúži na nútený pohyb smerom dole medzerník.
Rotácia v prípade hry Tetris je v 2D verzii pre smer hodinových ručičiek ovládaná tlačidlom R a pre opačný smer tlačidlom E. 3D verzia hry Tetris má však špeciálne ovládanie rotácie, ktoré je spolu s ovládaním pohybu zobrazené na nasledujúcom obrázku.
![Ovládanie hry Tetris 3D](1557824533741_tetriscontrol.png)
Okrem zobrazenej scény, obsahujú hry aj konzolové rozhranie, v ktorom je zobrazený aktuálny stav hry, ako aj skóre po ukončení testovania.
Na komunikáciu medzi jadrom virtuálnej jaskyne a herným jadrom sa využíva komunikačný súbor, z ktorého číta scéna formátované dáta v reálnom čase, zapisované v priebehu každého priebehu každého kroku herným jadrom.
Riadiaci systém CaveRehabManager s databázou pacientov
Ďalšou časťou vytvoreného systému je riadiaca windows aplikácia, tvorená rovnako ako herné jadro v jazyku C++, s pripojením na databázu. V rozhraní danej aplikácie je možné vykonávať akcie nad záznamami pacientov, nastaveniami testov a záznamami stretnutí alebo testovaní uložených v pripojenej databáze.
![](1557826066129_caverehabmanager.png)
Tabuľka pacientov obsahuje záznamy o zdravotnom stave ako aj o základných informáciách o pacientovi ako je meno, priezvisko a dátum narodenia. V prípade tabuľky nastavení testov sa rozdeľuje typ použitej hry herného jadra aj s parametrami náročnosti, rýchlosti a farebnosti hry. Na základe vybratých nastavení je následne možné spustiť testovanie v priestoroch virtuálnej jaskyne. Posledná tabuľka databázy slúži na ukladanie záznamu alebo rezerváciu termínu testovania. Okrem dátumu je možné v tejto tabuľke priradiť pacienta k nastaveniam testu a s odstupom času sledovať zvyšovanie jeho získaného skóre, prípadne zvyšovanie náročnosti testov s cieľom zlepšiť jeho zdravotným stav a schopnosti ovládania vlastného tela za účelom lepšieho výsledku v herných testoch.
Záver
Systém CaveRehab je zameraný hlavne na použitie v procesoch rehabilitácie a tréningu pacientov. Rovnako však vytvára možnosti pre využitie na zábavné účely a umožňuje do budúcna rozšíriť napríklad ovládanie o rôzne virtuálno-realitné technológie zachytávania pohybu ako napríklad Myo náramok alebo 3D joystick. Takisto je možné pod podmienkou splnenia formy zobrazovania a nastavení parametrov hier rozširovať herné jadro o ďalšie hry alebo testy.
S použitím virtuálnej jaskyne zároveň podporuje imerzívny zážitok z použitia a uľahčuje orientáciu v priestore 3D herného sveta, možným pohybom avatara na základe pohybu používateľa. Týmto zabezpečuje pozitívny dopad na používateľa a tvorí ideálne podmienky pre testovanie, s možnosťou opakovania rovnakého testu alebo aj úpravy náročnosti alebo rýchlosti na základe potrieb pacienta.