Preskoči na sadržaj
FORTRONIQ

MODUL 3 · RAZVOJ OKRUŽENJA VIRTUALNE STVARNOSTI

Modul 3 · završno

Aktivnosti za samostalno učenje

Zadaci prate redoslijed nastavnih jedinica modula. Za većinu su dovoljni olovka, papir i računski prikazi iz jedinica; zajednički primjer je virtualni laboratorij VR-1 s radnim stolom i mobilnim robotom koji se sklapa, pokreće i ispituje u sceni.

Aktivnosti za samostalno učenje

Zadaci su poredani redom nastavnih jedinica. Ondje gdje se spominje računski prikaz, rješenje se provjerava u pripadnoj jedinici.

  1. Novi VR projektIzradite novi projekt iz VR predloška u odabranom razvojnom okruženju, uključite dodatak za OpenXR i pokrenite praznu scenu u naočalama ili u simulatoru uređaja. Predajte snimku zaslona postavki dodataka i kratki opis koraka (najviše pola stranice), uz napomenu o inačici alata.
  2. Struktura projektaPredložite strukturu mapa projekta laboratorija VR-1 (modeli, materijali, teksture, nacrti ili skripte, scene, zvuk) i pravila imenovanja datoteka. Predajte stablo mapa i tablicu s tri primjera naziva za svaku vrstu datoteke.
  3. Postavke projekta za dva uređajaZapišite koje postavke projekta i izgradnje morate provjeriti za uređaj A (PC-VR) i za uređaj B (samostalne naočale): ciljna platforma, frekvencija 90 Hz, kvaliteta prikaza, dodatak za OpenXR. Predajte tablicu u dva stupca s obrazloženjem svake razlike.
  4. Prvi događaj i ispisIzradite logiku koja pri pokretanju scene ispisuje poruku, a pritiskom tipke na kontroleru ili tipkovnici povećava brojač i ispisuje njegovu vrijednost. Predajte snimku nacrta ili isječak skripte i snimku zaslona ispisa.
  5. Varijable stanja sklopaZa 12 dijelova robota MR-1 definirajte varijable koje opisuju stanje sklopa (koji su dijelovi na mjestu, je li sklop dovršen). Predajte popis varijabli s tipom, početnom vrijednošću i opisom te funkciju koja vraća broj dijelova na mjestu.
  6. Dijagram događajaNacrtajte dijagram toka događaja za odabir točke interesa: ulaz, isticanje, odabir, prikaz ploče s tekstom, zatvaranje. Predajte dijagram (rukom ili u programu) i jedan odlomak koji objašnjava zašto je logika odvojena od ulaza.
  7. Kamera na visini očijuPostavite rig tako da je ishodište praćenja na podu, a visina kamere dolazi iz praćenja. Provjerite u naočalama da je ploča stola na 750 mm od poda. Predajte snimku hijerarhije riga i izmjerenu visinu stola u sceni.
  8. Modeli kontrolera i rukuZamijenite zadane modele kontrolera modelima ruku i provjerite poklapanje položaja ruke sa stvarnom rukom. Predajte snimku iz naočala i opis kako ste podesili pomak modela ruke u odnosu na praćenu točku kontrolera.
  9. Animacija ruku prema tipkamaPovežite vrijednosti okidača i hvatišta (od 0 do 1) s animacijom zatvaranja ruke. Predajte snimku nacrta ili isječak skripte i kratku video snimku otvaranja i zatvaranja ruke.
  10. Hvatanje i puštanjeOmogućite hvatanje dijela rukom do 0,8 m i zrakom do 3 m te puštanje s prijenosom brzine ruke. Predajte video snimku hvatanja triju dijelova i tablicu s postavkama udaljenosti.
  11. Prebacivanje iz ruke u rukuIzradite prebacivanje dijela iz jedne ruke u drugu tako da dio ne padne i ne skoči. Predajte opis logike u pet koraka i video snimku prebacivanja baterije.
  12. Točke interesa s više ulazaIzradite jednu komponentu točke interesa s radnjama isticanja, prestanka isticanja i odabira, najprije za miš, a zatim za kontroler i pogled. Na robot postavite svih 6 točaka interesa. Predajte popis točaka s tekstom ploče i dokaz da isti objekt reagira na dva različita ulaza.
  13. Luk teleportaU računskom prikazu jedinice 3.5 odredite brzinu luka pri kojoj je domet pri kutu 45° i ruci na 1,1 m najbliži granici od 4 m, a ne prelazi je. Predajte izračun, očitane vrijednosti dometa i vrha luka i provjeru da vrh ne dosiže strop od 3 m.
  14. Teleport i okretanje u koracimaIzradite teleport lukom s provjerom valjanosti odredišta i okretanje u koracima od 30° oko glave korisnika. Predajte video snimku s tri teleporta i punim krugom od 12 koraka te opis kako ste spriječili ponavljanje koraka dok je palica nagnuta.
  15. Izbornik udobnostiIzradite izbornik s postavkama udobnosti: način kretanja, okretanje, vinjeta, zatamnjenje i sjedeći način, s teleportom kao zadanim načinom. Predajte snimku izbornika i tablicu zadanih vrijednosti s obrazloženjem.
  16. Uvoz i provjera robotaUvezite model robota MR-1 i provjerite mjerilo (220 × 180 × 110 mm), osi, ishodišta, nazive i točke interesa. Predajte ispunjenu kontrolnu listu s rezultatom svake provjere i snimkom robota uz kocku brida 1 m.
  17. Sklapanje s utorimaIzradite utore na šasiji i priklapanje dijelova unutar tolerancije te varijablu stanja sklopa. Predajte hijerarhiju sklopa, odabrane tolerancije za tri dijela s obrazloženjem i video snimku sklapanja.
  18. Most prema simulatoruU računskom prikazu jedinice 3.6 odredite najmanju frekvenciju poruka simulatora uz koju najveća starost podatka ostaje ispod 50 ms pri kašnjenju mosta od 10 ms i prikazu na 90 Hz. Predajte izračun i kratko obrazloženje zašto praćenje glave ne ide kroz most.
  19. Plan ispitivanjaNapišite šest testnih slučajeva za laboratorij VR-1 (hvatanje, točke interesa, teleport, okretanje, performanse, pokretanje) s preduvjetom, koracima, očekivanim rezultatom i mjerljivim kriterijem prolaza. Predajte tablicu slučajeva s oznakama.
  20. Profiliranje i budžet okviraIzmjerite vrijeme CPU-a i GPU-a, broj trokuta i poziva za crtanje u najgorem pogledu na ciljnom uređaju i unesite ih u računski prikaz jedinice 3.7. Predajte tablicu mjerenja, iskorištenost budžeta i prijedlog jedne optimizacije s procjenom učinka.
  21. Izvješće o ispitivanjuSastavite izvješće o ispitivanju s poglavljima: sažetak, opseg i oprema, testni slučajevi, performanse, udobnost, pogreške i zaključak. Predajte izvješće od najviše četiri stranice i popis predanih datoteka.

Vježbe uz modul

Uz modul idu 9 vježbi, ukupno 18 h. Poveznica Uz jedinicu vodi na gradivo koje treba proći prije vježbe. Cijeli praktikum područja obuhvaća 15 vježbi i 30 sati; popis je na stranici Vježbe.

VježbaNaslov, sadržaj i pripadna jedinicaTrajanje
V7Novi VR projekt u razvojnom okruženjuIz 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.Uz jedinicu 2.5, 3.12 h
V8Prva programska logika: događaji, varijable, ispisPrva 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.Uz jedinicu 3.22 h
V9Kamera na visini očiju i modeli kontroleraIzrada 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.Uz jedinicu 3.32 h
V10Modeli ruku i animacija prema tipkamaModeli 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.Uz jedinicu 3.32 h
V11Hvatanje, puštanje i prebacivanje iz ruke u rukuDijelovi 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.Uz jedinicu 3.42 h
V12Točke interesa: miš, pogled, kontroler i gesteNa š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.Uz jedinicu 3.42 h
V13Teleport, okretanje u koracima i vinjetaKorisnik 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.Uz jedinicu 3.52 h
V14Uvoz i sklapanje mobilnog robota u sceniDvanaest 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.Uz jedinicu 3.62 h
V15Testni slučajevi, mjerenje performansi i izvješćeGotova 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.Uz jedinicu 3.72 h