Pf 4 aflevering i faget Augmented Reality i en IoT kontekst

Lavet i forlængelse af 4. semesterprojekt af Jacob Eithz Bauer, Jacob Toftemark Jørgensen, Kasper Møberg Rasmussen og Peter Gissel Christiensen

 

I vores projekt har vi haft arbejdet med at lave en kontroller der kunne bringe en fysisk repræsentation af en 3D ø ud i virkeligheden, og lade bruger interagere med denne repræsentation for at opnå forskellige konsekvenser i det virtuelle miljø. På trods af at det kunne argumenteres at dette i sig selv var en argumentering af virkeligheden, idet at dette giver brugeren nye interaktionsmuligheder med et virtuelt miljø, har vi vha. Vuforia arbejdet med at bringe det virtuelle miljø ud i virkeligheden. Ideen var at vi ville anvende Vuforias udvidelse til Unity til at lægge den virtuelle ø oven på den fysiske ø, når man så på øen gennem AR-kompatible hardware, så som Google-cardbord.
Dette virker ved at vi definere et billed (se nedenstående billed ) som at vuforia udvidelsen registrer som en ”trigger” – når webcamet i computeren der kør programmet ser dette billed, instantiere den virtuelle ø oven på billedet.

Den fysiske model kan ses på det nedsåtende billed. Den består af en 3D printet model af ø’en, en LDR-sensor, en tryk-sensor og en tryk knap. Der er planner om at udvide antallet af disse sensor i fremtidig iteration for at øge antallet af interaktions modeller, men indtil videre er vi begrænset til disse tre. Vi har haft valgt disse tre typer af sensor da vi følger at disse sensorer var dem der gav den bedste overensstemmelse mellem den haptiske feedback  på den fysiske ø og det visuelle feedback på den virtuelle ø.

Når vuforia udvidelsen til Unity ser det første billed, som vi lægger ved den fysiske ø, bliver den virtuelle ø instantietet. Den virtuelle ø’s placering følger herefter billedets placering, og kan derved flyttes rundt i ”verden” vist i webcammet.

 

Video af programmet i aktion:

 

Hoved forskellene i denne pf aflevering og den tidligere pf aflevering er, udover selvfølgelig tilføjelsen af vuforia udvidelsen, polish på interaktionerne. Dette inkludere, men er ikke begrænset til, lava pytter hvor vores lavakugler rammer jorden, flere particles systems til at understøtte følelsen af collisioner, en AI der vandre på øen, mm.

 

Kode highlight

Vi har valgt at highlighte den del af AI koden hvori at den vælger den rute som den bevæger sig rundt på øen:

Koden starter med at tjekke om AI’en er i bevægelse og at den ikke har et mål i forvejen. Hvis AI’en ikke har opholdt sig 2 gange i det samme område, så er der en meget høj chance for at han bliver i det samme område. Er dette ikke tilfældet vil der være lige stor chance for hvilket område han bevæger sig til, indtil at “vægtningen” af hvert område bliver medregnet – vægtningen refere her til at nogen områder er sat til at være mere attraktiv for AI’en og vil derfor optræder oftere i hans rute.

Leave a Reply