En kortfattad nybörjarguide till Apple Vision Pro Design & Development

En kortfattad nybörjarguide till Apple Vision Pro Design & Development

Apple Vision Pro har lagt fram nya idéer om hur XR-appar ska utformas, kontrolleras och byggas. I den här gästartikeln ger Sterling Crispin en kortfattad guide för vad förstagångs-XR-utvecklare bör tänka på när de närmar sig apputveckling för Apple Vision Pro.

En kortfattad nybörjarguide till Apple Vision Pro Design & Development PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.Gästartikel av Sterling Crispin

Sterling Crispin är en konstnär och mjukvaruingenjör med ett decenniums erfarenhet av rumsdatorbranschen. Hans arbete har sträckt sig mellan produktdesign och forskning och utveckling av ny teknik på företag som Apple, Snap Inc och olika andra tekniska startups som arbetar med ansiktsdatorer.

Redaktörens anmärkning: Författaren vill påminna läsarna om att han inte är en Apple-representant; denna information är personlig åsikt och innehåller inte icke-offentlig information. Dessutom finns mer information om Vision Pro-utveckling i Apples WWDC23-videor (välj Filter → visionOS).

Framåt är mitt råd för att designa och utveckla produkter för Vision Pro. Den här artikeln innehåller en grundläggande översikt över plattformen, verktyg, porteringsappar, allmän produktdesign, prototyper, perceptuell design, affärsrådgivning och mer.

Översikt

Appar på visionOS är organiserade i "scener", som är Windows, Volumes och Spaces.

Windows är en rumslig version av vad du skulle se på en vanlig dator. De är avgränsade rektanglar av innehåll som användare omger sig med. Dessa kan vara fönster från olika appar eller flera fönster från en app.

Volymer är saker som 3D-objekt eller små interaktiva scener. Som en 3D-karta eller ett litet spel som svävar framför dig istället för att vara helt uppslukande.

Spaces är helt uppslukande upplevelser där bara en app är synlig. Det kan vara fullt av många Windows och volymer från din app. Eller som VR-spel där systemet försvinner och allt är helt uppslukande innehåll som omger dig. Du kan tänka på själva visionOS som ett delat utrymme där appar samexisterar och du har mindre kontroll. Medan Full Spaces ger dig mest kontroll och uppslukande, men samexisterar inte med andra appar. Utrymmen har fördjupningsstilar: blandade, progressiva och fulla. Vilket definierar hur mycket eller lite av den verkliga världen du vill att användaren ska se.

Användarinmatning

Användare kan titta på användargränssnittet och nypa som Apple Vision Pro-demofilmerna visar. Men du kan också nå ut och trycka på fönster direkt, ungefär som att det faktiskt är en flytande iPad. Eller använd en bluetooth-styrplatta eller videospelskontroll. Du kan också titta och tala i sökfälten. Det finns också en Dwell Control för indata endast för ögon, men det är verkligen en tillgänglighetsfunktion. För en enkel utvecklingsmetod kan din app bara använda händelser som en TapGesture. I det här fallet behöver du inte oroa dig för var dessa händelser kommer ifrån.

Rumsligt ljud

Vision Pro har ett avancerat rumsligt ljudsystem som får ljud att verka som om de verkligen finns i rummet genom att ta hänsyn till storleken och materialen i ditt rum. Att använda subtila ljud för interaktion med användargränssnittet och dra fördel av ljuddesign för uppslukande upplevelser kommer att bli riktigt viktigt. Se till att ta detta ämne på allvar.

Utveckling

Om du vill bygga något som fungerar mellan Vision Pro, iPad och iOS, kommer du att arbeta inom Apples utvecklingsekosystem med hjälp av verktyg som XCode och SwiftUI. Men om ditt mål är att skapa en helt uppslukande VR-upplevelse för Vision Pro som även fungerar på andra headset som Meta's Quest eller PlayStation VR, måste du använda Unity.

Apples verktyg

För Apples ekosystem kommer du att använda SwiftUI för att skapa användargränssnittet som användaren ser och det övergripande innehållet i din app. RealityKit är 3D-renderingsmotorn som hanterar material, 3D-objekt och ljussimuleringar. Du kommer att använda ARKit för avancerad scenförståelse, som om du vill att någon ska kasta virtuella pilar och få dem att kollidera med sin riktiga vägg, eller göra avancerade saker med handspårning. Men de rika AR-funktionerna är bara tillgängliga i Full Spaces. Det finns också Reality Composer Pro som är en 3D-innehållsredigerare som låter dig dra saker runt en 3D-scen och göra mediarika utrymmen eller volymer. Det är som diet-Unity som är byggd specifikt för denna utvecklingsstack.

En cool sak med Reality Composer är att den redan är full av tillgångar, material och animationer. Det hjälper utvecklare som inte är artister att bygga något snabbt och borde bidra till att skapa ett mer enhetligt utseende och känsla för allt som byggs med verktyget. För- och nackdelar med det produktbeslutet, men överlag borde det vara till hjälp.

Befintliga iOS-appar

Om du tar med dig en iPad- eller iOS-app kommer den förmodligen att fungera oförändrat som ett fönster i det delade utrymmet. Om din app stöder både iPad och iPhone kommer headsetet att använda iPad-versionen.

För att anpassa din befintliga iOS-app för att dra bättre nytta av headsetet kan du använda Ornament API för att göra små flytande öar av användargränssnitt framför, eller förutom din app, för att få det att kännas mer rumsligt. Ironiskt nog, om din app använder många ARKit-funktioner, kommer du sannolikt att behöva "omvandla" den avsevärt för att fungera på Vision Pro, eftersom ARKit har uppgraderats mycket för headsetet.

Om du är exalterad över att bygga något nytt för Vision Pro, är min personliga åsikt att du bör prioritera hur din app kommer att ge värde över iPad och iOS också. Annars går du miste om hundratals miljoner användare.

Unity

Du kan bygga till Vision Pro med Unity-spelmotorn, vilket är ett enormt ämne. Återigen, du måste använda Unity om du bygger till Vision Pro såväl som ett Meta-headset som Quest eller PSVR 2.

Unity stöder att bygga Bounded Volumes för Shared Space som finns tillsammans med inbyggt Vision Pro-innehåll. Och Unbounded Volumes, för uppslukande innehåll som kan utnyttja avancerade AR-funktioner. Slutligen kan du också bygga fler VR-liknande appar som ger dig mer kontroll över renderingen men som verkar sakna stöd för ARKit-scenförståelse som plandetektering. Volymmetoden ger RealityKit mer kontroll över renderingen, så du måste använda Unitys PolySpatial-verktyg för att konvertera material, shaders och andra funktioner.

Unity-stöd för Vision Pro inkluderar massor av interaktioner du kan förvänta dig att se i VR, som att teleportera till en ny plats eller plocka upp och kasta virtuella objekt.

Produkt Design

Du kan bara skapa en iPad-liknande app som dyker upp som ett flytande fönster, använda standardinteraktionerna och kalla det en dag. Men som jag sa ovan kan innehåll existera i ett brett spektrum av nedsänkning, platser och använda ett brett utbud av input. Så det kombinatoriska utbudet av möjligheter kan vara överväldigande.

Om du inte har spenderat 100 timmar i VR, skaffa en Quest 2 eller 3 så snart som möjligt och prova allt. Det spelar ingen roll om du är designer, produktchef eller VD, du måste skaffa en Quest och spendera 100 timmar i VR för att börja förstå språket i rumsliga appar.

Jag rekommenderar starkt att kolla in Handfysiklabb som utgångspunkt och översikt för att förstå direkta interaktioner. Det finns många subtila saker de gör som genomsyrar virtuella objekt med en känsla av fysiskhet. Och den YouTube VR app som släpptes 2019 ser ut och känns ganska lik en grundläggande visionOS-app, det är värt att kolla in.

För dagbok över vad som fungerar och vad som inte fungerar.

Fråga dig själv: 'Vilka appdesigner är bekväma eller orsakar trötthet?', 'Vilka appar har snabbast tid till roligt eller värde?', 'Vad är förvirrande och vad är intuitivt?', 'Vilka upplevelser skulle du ens bry dig om att göra mer än en gång? Var brutalt ärlig. Lär dig så mycket som möjligt av det som har prövats.

Allmänna designråd

Jag rekommenderar starkt designtänkandet i IDEO-stil, det fungerar också för rumslig beräkning. Du bör absolut prova det om du inte är bekant. Det finns Design Kit med resurser och denna video vilket, även om det är daterat, är ett bra exempel på processen.

Vägen till rumslig beräkning är en kyrkogård av utopiska idéer som misslyckades. Människor tenderar att lägga mycket lång tid på att bygga storslagna lösningar för imaginära användares imaginära problem. Det låter självklart, men istället bör du försöka bygga något så snabbt som möjligt som fyller ett verkligt mänskligt behov, och sedan iterativt förbättra därifrån.

Fortsätt på sida 2: Rumsliga format och interaktion »

Tidsstämpel:

Mer från Vägen till VR