These last few months, I have been making augmented reality (AR) prototypes with ARKit and ARCore at my desk at CoMotion Labs as the Lead Prototype Developer at Fair Worlds and I would like to share what I’ve learned.
You've probably heard “AR” in the news. But what the heck is AR and why should I care?
AR overlays information on top of your existing world unlike virtual reality (VR) which completely absorbs you into another world. You’ve probably seen a recent example of AR with Pokémon Go.
Pokémon Go players, like the one above, would catch virtual Pokémon by wandering around the world. The game mobilized players to leave their homes and actually go on walks instead of binge watch the latest show on Netflix. You could see people wandering in groups around looking furtively back and forth for Pokémon calling out to each other. You can still find players playing around Pokémon Gyms, which are real life landmarks that have virtual gyms super imposed on them. For a couple weeks in the summer, everyone was absorbed into the craze. Pokémon Go was the gateway application of AR.
Niantic, the developers of Pokémon Go, are set to make another AR experience with the beloved franchise Harry Potter in 2018. So AR is big and it’s not going anywhere.
With Pokémon Go leading the way, there has been a thirst for more augmented reality experiences. This year Apple opened up the flood gates for AR development. They launched a single-camera AR solution with ARKit. Google followed up with their version of ARKit, ARCore, a few months later.
Before this, AR development was limited to only a select group of developers because the devices were not commercially available. Google was working on a two-camera AR solution with Project Tango, but it was not sold for public consumption.
Microsoft has a similar ability to map the 3D world with the HoloLens. The $3,000 price tag though keeps this from becoming widely adopted.
I won’t go until the super technical, but if you are interested I would read this article by Matt Miesnieks on "Why is ARKit better than the alternatives?" What I will tell you is that ARKit/Core gives you the ability to place objects on surfaces.
ARKit/Core detects surfaces using the camera and accelerometer/gyroscope, which allows you to drop lots of LaCroix on the floor as seen above. It doesn’t map your whole room into a 3D mesh for you like the HoloLens. So you can place objects on these surfaces like floors and tables.
ARKit/Core gives you light estimation through the camera, which modifies the ambient intensity of the scene.
I want to go through some of my personal experiences while developing for AR.
The first experience I created was called ARKatz. The basic premise is that you need to collect mischievous cats and capture them by booping their virtual noses
The idea of the project came from the above meme that has been floating around and
I got excited about physically engaging with virtual characters in a DIRECT manner with the "boop." I'm telling you it's the next paradigm shift in user interaction design. ;) It's going to be BIG!
One of my core tenants as a designer is to try to make experiences more than just pushing a flat touch screen. We’ve seen a dystopian future with the Black Mirror TV show where people become slaves to their devices.]
I worked on the concept of virtual boops that hopefully reengages an appreciation of your surroundings. What I found was that when I went on walks, when I came across a cat, I wanted to put the virtual cats into the same scene as the real cat. I as a dumb human liked to create stories about these cats.
That’s the power of AR is that you can re-contextualize the mundane.
Amazon and IKEA have realized that and have been updating their apps to allow users to see what their products will look like in context before they buy.
There’s incredible value of seeing a virtual 3D object placed in your home. There’s no more guess work. It’s now overlaid onto your world.