Design af Mixed Reality-apps, der tilpasser sig dynamiske rum

Design af Mixed Reality-apps, der tilpasser sig dynamiske rum

Laser dans er et kommende mixed reality-spil, der søger at bruge Quests passthrough-evne som mere end blot en baggrund. I denne gæsteartikel forklarer udvikler Thomas Van Bouwel sin tilgang til at designe et MR-spil, der reagerer dynamisk på forskellige miljøer.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.Gæsteartikel af Thomas Van Bouwel

Thomas er en belgisk-brasiliansk VR-udvikler, der i øjeblikket er baseret i Bruxelles. Selvom hans oprindelige baggrund er inden for arkitektur, spænder hans arbejde i VR fra indie-spil som kubisme til virksomhedssoftware til arkitekter og ingeniører som løse. Hans seneste projekt, Laser dans, kommer til Quest 3 sent næste år.

I det sidste år har jeg arbejdet på et nyt spil kaldet Laser dans. Bygget fra bunden til Mixed Reality (MR), er mit mål at lave et spil, der forvandler ethvert rum i dit hus til en laserforhindringsbane. Spillere går frem og tilbage mellem to knapper, og hvert knaptryk afføder et nyt parametrisk lasermønster, de skal navigere igennem. Spillet er stadig i fuld udvikling og sigter mod en udgivelse i 2024.

Hvis du gerne vil tilmelde dig playtesting Laser Dance, du kan gøre det her!

[Indlejret indhold]

Laser Dance's teaser-trailer, som første gang blev vist lige efter Meta Connect 2023

Den største udfordring med et spil som dette, og muligvis ethvert rumskala MR-spil, er at lave niveauer, der tilpasser sig godt til ethvert rum, uanset dets størrelse og layout. Desuden siden Laser dans er et spil, der kræver meget fysisk bevægelse, skal spillet også forsøge at rumme forskelle i folks mobilitetsniveau.

For at prøve at overvinde disse udfordringer er det vigtigt at have gode rum-emuleringsværktøjer, der muliggør hurtig niveaudesigniteration. I denne artikel vil jeg gennemgå, hvordan niveauer ind Laser dans arbejde, og del nogle af de udviklerværktøjer, som jeg bygger for at hjælpe mig med at skabe og teste spillets adaptive lasermønstre.

Laser mønster definition

At forstå hvordan Laser Dance Værktøjer til rumemulering fungerer, skal vi først dække, hvordan lasermønstre fungerer i spillet.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.Et niveau i Laser Dance består af en sekvens af lasermønstre – spillere går (eller kravler) frem og tilbage mellem to knapper i hver sin ende af rummet, og hvert knaptryk aktiverer det næste mønster. Disse lasermønstre vil forsøge at tilpasse sig rummets størrelse og layout.

Siden lasermønstrene ind Laser Dance niveauer skal tilpasses til forskellige typer rum, de specifikke positioner af lasere er ikke forudbestemt, men beregnes parametrisk baseret på rummet.

Der bruges flere metoder til at placere laserne. Den mest ligetil er at anvende et ensartet mønster over hele rummet. Et eksempel er vist nedenfor på et niveau, der anvender et ensartet gitter af svingende lasere på tværs af rummet.

Et eksempel på et mønsterbaseret niveau, et ensartet bevægelsesmønster påføres et gitter af lasere, der dækker hele rummet.

Andre niveauer kan bruge knaporienteringen i forhold til hinanden til at bestemme lasermønsteret. Nedenstående eksempel viser et mønster, der skaber en sekvens af blinkende laservægge mellem knapperne.

Blinkende vægge af lasere er orienteret vinkelret på den imaginære linje mellem de to knapper.

Et af de mere alsidige værktøjer til niveaugenerering er en brugerdefineret stifindingsalgoritme, som er skrevet til Laser dans by Mark Schramm, gæsteudvikler på projektet. Denne algoritme forsøger at finde stier mellem knapperne, der maksimerer afstanden fra møbler og vægge, hvilket gør en mere sikker vej for spillere.

Stierne skabt af denne algoritme giver mulighed for adskillige lasermønstre, som en tunnel af lasere, eller at placere en laserforhindring midt på spillerens vej mellem knapperne.

Dette niveau bruger stifinding til at skabe en tunnel af lasere, der slanger sig rundt om møblerne i dette rum.

Rumemulering

De forskellige teknikker beskrevet ovenfor til at skabe adaptive lasermønstre kan nogle gange føre til uventede resultater eller fejl i specifikke rumlayouts. Derudover kan det være udfordrende at designe niveauer, mens man prøver at holde forskellige typer rum i tankerne.

For at hjælpe med dette brugte jeg meget af den tidlige udvikling til Laser dans om at bygge et sæt rumemuleringsværktøjer for at lade mig simulere og direkte sammenligne, hvordan et niveau vil se ud mellem forskellige rumlayouts.

Rum gemmes i spillet som en simpel tekstfil, der indeholder alle væg- og møblerpositioner og dimensioner. Emuleringsværktøjet kan tage disse filer og skabe flere rum ved siden af ​​hinanden direkte i Unity-editoren.

Du kan derefter udskifte forskellige niveauer, eller endda bare individuelle lasermønstre, og efterligne disse side om side i forskellige rum for direkte at sammenligne dem.

Et brugerdefineret værktøj bygget i Unity afføder flere rum side om side i en ortografisk visning, der viser, hvordan et bestemt niveau i Laser Dance ville se ud i forskellige rumlayouts.

Tilgængelighed og spilleremulering

Ligesom de rum, som folk spiller i, kan være forskellige, vil de mennesker, der spiller sig selv, også være meget forskellige. Ikke alle er måske i stand til at kravle på gulvet for at undvige lasere eller føle sig i stand til at presse sig gennem en smal korridor af lasere.

På grund af den fysiske karakter af Laser Dance gameplay, vil der altid være en grænse for tilgængeligheden. Men i det omfang det er muligt, vil jeg stadig gerne prøve at få niveauerne til at tilpasse sig spillerne på samme måde, som de tilpasser sig til værelserne.

I øjeblikket giver Laser Dance spillere mulighed for at indstille deres højde, skulderbredde og den minimumshøjde, de er i stand til at kravle under. Niveauer vil forsøge at bruge disse værdier til at justere visse parametre for, hvordan de opstår. Et eksempel er vist nedenfor, hvor et niveau typisk ville forvente, at spillere kravler ned under et felt af lasere. Når du justerer den minimale kravlehøjde, tilpasser dette mønster sig til den nye værdi, hvilket gør niveauet mere tilgivende.

Tilgængelighedsindstillinger giver spillere mulighed for at skræddersy nogle af Laser Dance's niveauer til deres kropstype og mobilitetsbegrænsninger. Dette eksempel viser, hvordan et niveau, der ville få spillere til at kravle på gulvet, kan justere sig selv for folk med mere begrænset vertikal mobilitet.

Disse spillerværdier kan også efterlignes i de brugerdefinerede værktøjer, jeg bygger. Forskellige spillerforudindstillinger kan byttes ud for direkte at sammenligne, hvordan et niveau kan se forskelligt ud mellem to spillere.

Laser Dance's emuleringsværktøjer giver dig mulighed for at udskifte forskellige forudindstillede afspillerværdier for at teste deres effekt på lasermønstrene. I dette eksempel kan du bemærke, hvordan skift til en mere tilgængelig afspillerværdi forudindstillet gør tunnelen af ​​lasere bredere.

Data, test og privatliv

Et centralt problem ved at designe et adaptivt spil som Laser Dance er, at uventede rumlayouts og miljøer kan bryde nogle af niveauerne.

For at prøve at forberede sig på dette under udviklingen er der en knap i indstillingerne, som spillere kan vælge at trykke på for at dele deres rumdata med mig. Ved at bruge disse emuleringsværktøjer kan jeg derefter prøve at reproducere deres problem i et forsøg på at løse det.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Playtestere kan trykke på en knap i indstillingerne for at dele deres værelseslayout. Dette giver mulighed for lokal gengivelse af potentielle problemer, de kan have set, ved hjælp af emuleringsværktøjerne nævnt ovenfor.

Dette burde selvfølgelig rejse nogle bekymringer om privatlivets fred, da spillere i det væsentlige deler dele af deres hjemmelayout med mig. Fra et udviklersynspunkt har det en klar fordel for design- og kvalitetskontrolprocessen, men som forbrugere af MR bør vi også have en aktiv bekymring for, hvilke personlige data udviklere skal have adgang til, og hvordan de bruges.

Personligt synes jeg, det er vigtigt, at deling af følsomme data som denne kræver aktivt samtykke fra spilleren, hver gang det deles – deraf knappen, der skal trykkes aktivt på i indstillingerne. Tydelig kommunikation om, hvorfor disse data er nødvendige, og hvordan de vil blive brugt, er også vigtig, hvilket er en stor del af min motivation for at skrive denne artikel.

Når det kommer til MR-platforme, er en aktiv diskussion om databeskyttelse også vigtig. Vi kan ikke altid antage, at følsomme rumdata vil blive brugt i god tro af alle udviklere, så som spillere bør vi forvente klar kommunikation og klare begrænsninger fra platforme med hensyn til, hvordan apps kan få adgang til og bruge denne type følsomme data, og holde os på vagt med, hvordan og hvorfor visse apps kan anmode om adgang til disse data.

Har du brug for at bygge brugerdefinerede værktøjer?

Er det et krav at bygge en håndfuld brugerdefinerede værktøjer for at udvikle adaptiv Mixed Reality? Heldigvis er svaret på det: sandsynligvis ikke.

Vi ser allerede Meta , Apple komme ud med deres egne mixed reality-emuleringsværktøjer, der lader udviklere teste deres apps i et simuleret virtuelt miljø, selv uden headset. Disse værktøjer bliver sandsynligvis kun bedre og mere robuste med tiden.

Der er stadig fordele ved at bygge brugerdefinerede værktøjer i nogle tilfælde, da de vil give dig den største fleksibilitet til at teste mod dine specifikke krav. At være i stand til at efterligne og sammenligne mellem flere rum eller spillerprofiler på samme tid i Laser dans er et godt eksempel på dette.

– – – – –

Udvikling af Laser dans er stadig i fuld gang. Mit håb er, at jeg ender med et sjovt spil, der også kan tjene som en introduktion til mixed reality for nybegyndere på mediet. Selvom det tog noget tid at opbygge disse emuleringsværktøjer, vil de forhåbentlig både aktivere og fremskynde niveaudesignprocessen for at hjælpe med at nå dette mål.

Hvis du gerne vil hjælpe med udviklingen af ​​spillet, så overvej det tilmelding til playtesting!


Hvis du fandt disse indsigter interessante, så tjek Van Bouwels andre gæsteartikler:

Tidsstempel:

Mere fra Vejen til VR