Ett osynligt djur i mataffären
Den bästa användningen av augmented reality handlar sällan om att titta på 3D-innehåll. Den handlar om att veta var man står.
Det var slutsatsen jag tog med mig ur ett projekt som på ytan var någonting helt annat än byggbranschen: ett spel för fyra- till åttaåringar i en Coop-butik i Stockholm.
Uppdraget
Peppy Pals, ett svenskt bolag som gör spelbaserat lärande, ville tillsammans med Coop göra veckohandlingen till något annat än ett bråk vid godishyllan. Idén de landade i var en receptjakt. Barnet väljer ett recept och en figur — hund, katt, uggla, kanin eller häst — och figuren leder sedan barnet till varje ingrediens i butiken. När barnet hittar rätt vara gör figuren något roligt bus.
Poängen, som Paulina Olsson på Peppy Pals formulerade den, var att ingen annan kan se figuren. Barnet är ensamt om den. Det gör besöket till ett roligt uppdrag i stället för en transportsträcka.
Information Experience var teknikpartnern. Vår del var frågan som behövde lösas under spelets gång: hur vet telefonen tillräckligt exakt var i butiken den befinner sig?
Varför det är svårt
En livsmedelsbutik är i princip det värsta rum man kan välja. Den är stor. Den är inomhus, så GPS är utesluten. Den ser likadan ut överallt — långa parallella gångar med repetitiva hyllor är precis den geometri som får bildbaserad positionering att förväxla en plats med en annan. Och innehållet flyttas om med jämna mellanrum.
Kravet var samtidigt hårdare än det låter. Det räcker inte att veta vilken gång man står i. Ett barn som skickas till gurkan och hamnar vid salladen har fått fel svar, och ett barn som får fel svar två gånger slutar spela. Vi behövde stabil spårning ner till några få meter, i hela butiken.
Vi ville inte heller lösa det med QR-koder överallt. Det fungerar, men det förstör känslan — och känslan var hela produkten. Som jag uttryckte det i Microsofts fallstudie: vi hade en tydlig bild av upplevelsen vi ville skapa, och koder och visuella markörer kändes inte nyskapande.
Vad det landade i
Valet blev Azure Spatial Anchors, som gör en beständig 3D-karta av lokalen och kontinuerligt korrigerar telefonens position mot den. Det gav en konsekvent upplevelse över stora ytor och på både Android och iOS, vilket var ett krav — barnen skulle spela på familjens egna telefoner.
Ett rent kartbaserat upplägg har dock ett startproblem: appen vet till en början inte var i kartan den är. Det löste vi med bildigenkänning. När spelet startar ombeds användaren rikta kameran mot en dekal på golvet, och den dekalen ger en snabb och exakt utgångspunkt innan jakten börjar.
Coop satte upp fler dekaler i butiken än vad tekniken egentligen krävde. De behövdes inte alltid för positioneringen, men de fungerade också som ledtrådar om att en figur var i närheten. Det är en bra påminnelse om att ett tekniskt hjälpmedel och ett dramaturgiskt grepp kan vara samma sak.
Som i de övriga projekten så var problemet inte bara tekniken — även om det var svårt nog.
På vår första testrunda så blev barnen förtjusta i appen så till den grad att de ofta började springa med telefonen i handen så att den viftade åt alla håll medan de sprang — vilket ledde till att algoritmen tappade orienteringen och kartan hamnade fel. Lösningen blev att låta den virtuella katten röra sig långsammare, och att den skulle söka “ögonkontakt” med barnet, och stanna till och komma med uppmuntrande kommentarer längs vägen, så att barnen promenerade sakta genom butiken i stället för att springa.
Vad jag tog med mig
Coop rapporterade efteråt att synligheten ökade med tjugo procent och att omnämnandena blev mer positiva. Det är marknadsföringssiffror, och jag lägger inte så stor vikt vid dem.
Det som satt kvar var något annat. Två projekt som inte har något gemensamt — armering på ett kärnfysiklaboratorium och en receptjakt för sexåringar — visade sig ha exakt samma svåra kärnproblem. Någonting virtuellt ska ligga stilla i förhållande till ett fysiskt rum, tillräckligt exakt, tillräckligt länge, medan rummet förändras.
Byggprojektet handlade om centimetrar och mataffären om meter. Men det var i grunden samma problem, och jag har hållit på med det sedan dess.