Preskoči na sadržaj
FORTRONIQ
IzbornikDigitalni sadržajiVirtualna stvarnost3. Razvoj okruženja virtualne stvarnosti

VIRTUALNA STVARNOST

Modul 3

Razvoj okruženja virtualne stvarnosti

Treći modul vodi od praznog projekta do ispitane aplikacije za virtualnu stvarnost. Polaznici u razvojnom okruženju s podrškom za OpenXR grade scenu, programsku logiku, kameru, kontrolere i ruke, hvatanje i točke interesa te kretanje s postavkama udobnosti. Zatim spajaju modele, logiku i uređaje u jednu aplikaciju povezanu sa simulatorom robota i ispituju je testnim slučajevima, profiliranjem i s ispitanicima. Sve se radi na virtualnom laboratoriju VR-1.

Moći ću:
  • izraditi VR projekt u odabranom razvojnom okruženju i uključiti podršku za OpenXR
  • izraditi programsku logiku nacrtima ili skriptama: događaje, varijable, funkcije i ispis
  • prilagoditi kameru, kontrolere i modele ruku odabranoj hardverskoj opremi
  • izraditi hvatanje, puštanje i točke interesa neovisne o vrsti ulaza
  • izraditi kretanje teleportom i okretanjem u koracima te odabrati postavke udobnosti
  • integrirati modele, logiku i uređaje u potpuno funkcionalno okruženje virtualne stvarnosti povezano sa simulatorom robota
  • izgraditi isti projekt za računalo s mišem, PC-VR i samostalne naočale uz poštivanje ograničenja platforme
  • testirati funkcionalnost, performanse i udobnost izrađenog okruženja i sastaviti izvješće o ispitivanju

O modulu

U ovom modulu nastaje aplikacija. Modeli pripremljeni u prvom modulu i znanje o percepciji, praćenju i zaslonima iz drugog modula slažu se u scenu u kojoj korisnik stoji uz radni stol, hvata dijelove, sklapa mobilni robot MR-1, doznaje što koji dio radi i pušta ga da vozi.

Prve četiri jedinice grade temelje: VR projekt s dodatkom za OpenXR, programsku logiku nacrtima ili skriptama, rig s kamerom na visini očiju, kontrolerima i animiranim rukama te interakciju hvatanjem i točkama interesa. Načela su opisana neovisno o alatu; kao primjer izvedbe koristi se okruženje s vizualnim programiranjem nacrtima (npr. Unreal Engine), a gdje pomaže navodi se i izvedba u okruženju s C# skriptama (npr. Unity s paketom za XR interakciju). Točke interesa grade se tako da ista logika radi s mišem, pogledom, kontrolerom i gestama, pa se velik dio rada može obaviti i bez naočala.

Zadnje tri jedinice vode aplikaciju do predaje: kretanje teleportom, okretanjem u koracima i izbornim kontinuiranim kretanjem uz vinjetu; integraciju modela, logike i uređaja s vezom prema simulatoru robota i izgradnjom za računalo s mišem, PC-VR i samostalne naočale; te ispitivanje prema testnim slučajevima, profiliranje prema budžetu okvira od 11,1 ms i ispitivanje udobnosti s ispitanicima. Rezultat modula je izgrađena aplikacija za oba ciljna uređaja i izvješće o ispitivanju, što je ujedno sadržaj četvrte faze projektnog zadatka.

Nastavne jedinice

  • 3.1

    Razvojno okruženje i VR projekt

    Novi VR projekt iz predloška, uključivanje dodatka OpenXR, postavke iscrtavanja za 90 Hz, struktura mapa i imena te prvo pokretanje u naočalama.

    Otvori
  • 3.2

    Programska logika: nacrti, događaji i varijable

    Nacrti i skripte: klase i instance, događaji i tok izvršavanja, varijable i tipovi, funkcije, grananja, komunikacija među objektima te ispis i otklanjanje pogrešaka.

    Otvori
  • 3.3

    Hardverski segmenti u sceni: kamera, kontroleri i ruke

    VR pijun i njegova hijerarhija, ishodište praćenja i visina očiju, kontroleri pokreta i njihove poze, ulazne akcije i kontekst mapiranja, modeli ruku i animacija prema tipkama.

    Otvori
  • 3.4

    Interakcija: hvatanje, puštanje i točke interesa

    Hvatanje i puštanje, uloga okidača, hvatišta i dodirne podloge, prebacivanje iz ruke u ruku, postavljanje na ciljno mjesto i točke interesa s jednom logikom za miš, pogled, kontroler i geste.

    Otvori
  • 3.5

    Kretanje u sceni i udobnost

    Teleport lukom, okretanje u koracima, kontinuirano kretanje s vinjetom i postavke udobnosti u laboratoriju VR-1.

    Otvori
  • 3.6

    Integracija modela, logike i uređaja u funkcionalno okruženje

    Uvoz i sklapanje robota MR-1, kolizije, veza sa simulatorom robota i izgradnja za PC i samostalne naočale.

    Otvori
  • 3.7

    Testiranje funkcionalnosti i performansi

    Testni slučajevi, profiliranje, budžet okvira, ispitivanje udobnosti s ispitanicima, izvješće i predaja.

    Otvori

Ključni pojmovi modula

PojamZnačenje
razvojno okruženje (engl. real-time engine)program koji u stvarnom vremenu iscrtava scenu, računa fiziku, čita ulaz i izgrađuje aplikaciju
projekt (engl. project)mapa sa svim sadržajem, postavkama i logikom jedne aplikacije
nacrt (engl. Blueprint)vizualni program sastavljen od čvorova povezanih izvršnim i podatkovnim žicama
čvor (engl. node)jedna naredba ili vrijednost u nacrtu
pijun (engl. pawn, XR rig)objekt koji u sceni predstavlja korisnika s glavom i rukama
ishodište praćenja (engl. tracking origin)referentna točka praćenja, za stajanje na razini poda
onaj koji djeluje (engl. interactor)ruka, zraka, pogled ili pokazivač koji traži predmet i djeluje na njega
predmet interakcije (engl. interactable)objekt koji se može uhvatiti, odabrati ili pritisnuti
Teleport (engl. teleportation)trenutno premještanje riga na odabrano odredište bez prikaza gibanja
Vinjeta (engl. vignette, tunneling)zatamnjenje rubova vidnog polja za vrijeme umjetnog gibanja radi udobnosti
Utor za priklapanje (engl. socket, attach point)prazni objekt s ishodištem i zakretom dijela u sklopljenom stanju
Most prema simulatoru (engl. bridge)mali program koji prenosi poruke između VR aplikacije i simulatora robota
Testni slučaj (engl. test case)zapis jednog provjerljivog zahtjeva s koracima, očekivanim rezultatom i kriterijem prolaza
Budžet okvira (engl. frame budget)vrijeme dostupno za jedan okvir, 11,1 ms pri 90 Hz, s ciljem od 9,0 ms za CPU i GPU

Vježbe uz modul

Uz modul idu 9 vježbi, ukupno 18 sati. Pitanja u vježbama su bez odgovora, a rješenje se otvara gumbom Prikaži rješenje; upute za nastavnika su na dnu svake vježbe.

  • VJEŽBA V7 · 2 SATA

    Novi VR projekt u razvojnom okruženju

    Iz predloška VR projekta u razvojnom okruženju s nacrtima izrađuje se projekt virtualnog laboratorija VR-1 s dodatkom OpenXR, uređenom strukturom mapa i prvom scenom u mjerilu 1 : 1. Projekt se pokreće u naočalama i provjerava prema budžetu okvira od 11,1 ms.

    Otvori
  • VJEŽBA V8 · 2 SATA

    Prva programska logika: događaji, varijable, ispis

    Prva programska logika laboratorija VR-1 u nacrtu: događaj pri pokretanju, varijable, ispis na zaslon i grananje koje prati koliko je dijelova robota skupljeno. Isti tok izveden je i kao kratki primjer u okruženju s C# skriptama.

    Otvori
  • VJEŽBA V9 · 2 SATA

    Kamera na visini očiju i modeli kontrolera

    Izrada vlastitog igrača za laboratorij VR-1: VR ishodište na podu, kamera koju vode naočale i dva kontrolera s vidljivim modelima. Provjerava se da korisnici različite visine vide radni stol na stvarnih 750 mm i da zraka iz kontrolera pokazuje tamo kamo ruka pokazuje.

    Otvori
  • VJEŽBA V10 · 2 SATA

    Modeli ruku i animacija prema tipkama

    Modeli kontrolera u laboratoriju VR-1 zamjenjuju se modelima lijeve i desne ruke s tri položaja: otvorena ruka, pokazivanje i šaka. Položaj se miješa prema vrijednostima hvatišta i okidača, uz izglađivanje prijelaza neovisno o broju sličica.

    Otvori
  • VJEŽBA V11 · 2 SATA

    Hvatanje, puštanje i prebacivanje iz ruke u ruku

    Dijelovi mobilnog robota MR-1 na radnom stolu laboratorija VR-1 hvataju se hvatištem (bočnom tipkom kontrolera), puštaju i prebacuju iz ruke u ruku. Logiku gradite nacrtima: traženje najbližeg objekta u dosegu, pričvršćivanje na ruku i predaja fizici pri puštanju.

    Otvori
  • VJEŽBA V12 · 2 SATA

    Točke interesa: miš, pogled, kontroler i geste

    Na šest dijelova robota MR-1 postavljaju se točke interesa koje se ističu, pokazuju natpis i otvaraju panel s objašnjenjem. Logika se piše jednom, u C# komponenti, a miš, pogled, kontroler i geste samo su različiti ulazi koji je pozivaju.

    Otvori
  • VJEŽBA V13 · 2 SATA

    Teleport, okretanje u koracima i vinjeta

    Korisnik se laboratorijem VR-1 kreće teleportom lukom do 4 m i okreće u koracima od 30°, a kontinuirano kretanje uključuje se samo po izboru i uz vinjetu. Vježba povezuje logiku kretanja nacrtima s udobnošću i sigurnošću prostora za igru.

    Otvori
  • VJEŽBA V14 · 2 SATA

    Uvoz i sklapanje mobilnog robota u sceni

    Dvanaest dijelova robota MR-1 uvozi se u scenu laboratorija VR-1 i rukama sklapa na radnom stolu. Vježba povezuje ishodišta, kolizijske oblike, fiziku i hijerarhiju sklopa s logikom prihvata dijela na ležište.

    Otvori
  • VJEŽBA V15 · 2 SATA

    Testni slučajevi, mjerenje performansi i izvješće

    Gotova aplikacija laboratorija VR-1 ispituje se prema 18 testnih slučajeva na dva uređaja, mjere se vrijeme okvira, pozivi za crtanje i trokuti, a udobnost se provjerava s ispitanicima. Rezultati se predaju kao kratko izvješće s odlukama o ispravcima.

    Otvori

Završne stranice modula

  • ZAVRŠNO

    Aktivnosti za samostalno učenje

    Zadaci uz računske prikaze jedinica, sheme i katalog elemenata. Rješavaju se pojedinačno ili u paru.

    Otvori
  • ZAVRŠNO

    Procjena znanja

    Pitanja iz svih nastavnih jedinica modula s obrazloženjem točnog odgovora.

    Otvori