Looking to spread joy at the end of what they describe as a “pretty dark” year, Team One created Happy Things, an “augmented reality happiness-maker” app. Read on to find out how they made it with Unity.
Team One worked all year to help brands understand and engage customers in a meaningful way. To put a bow on 2018, they created an engaging AR app that they hope will make users smile and laugh. Inspired by the meme genre “Real Life Doodles,” they wanted a simple way for people to bring inanimate objects to life and share them.
To do this, they worked with Digital Domain, a creative force across industries whose artists have won over 100 major awards, including Oscars, Clios, BAFTAs and Cannes Lions.
Users simply open the app, point their camera at any object, place and size an animated Happy Thing on the object, record a short voiceover and voilà – it’s ready for sharing.
To build the app, Digital Domain created the animations and Team One did the development work. Here are the Unity tools the agency used to bring Happy Things to life:
Sprite Renderer: Sprites are essentially just standard textures but there are special techniques for combining and managing sprite textures for efficiency and convenience. The animation assets in the app were imported into Unity as 2D sprites on sprite cards and they used the Sprite Renderer to control how they appear in the scene.
ARKit plugin: This is a native Unity plugin that exposes the functionality of Apple’s ARKit SDK to your Unity projects for compatible iOS devices. Specifically, they used ARKit to handle the markerless camera tracking, as well as horizontal and vertical plane detection.
Custom scripts: Unity lets you create your own components using scripts. These allow you to trigger game events, modify component properties over time, and respond to user input any way you like. Team One wrote custom scripts to handle the playback of the recorded video.
Microphone API: This was used to record audio via a connected microphone. They used this API to do the voice recording and to drive the mouth animation. The amplitude of the microphone drives which frame of the mouth animation the app plays at any time.
1024x1024 RGBA ASTC 10x10 Compression Algorithm: Compressed RGB texture. Team One used this to reduce the redundancy of frames and to trim approximately 1200 from the total frame count. This allowed them to cut their app install size from 1.1GB to approximately 340MB. The download size on the App Store is only 32MB.
NatCorder – Video Recording API: A lightweight, easy-to-use, full-featured video recording API for iOS and Android. Team One used this API for the video capture.
NatShare – Mobile Sharing API: A lightweight sharing API for iOS and Android. Team One used this API to enable users to save video recordings from the app to the camera roll.
Go to www.happythingsapp.com to learn more about the app. When you share your own Happy Things, be sure to include the hashtags #happythingsapp and #madewithunity so that we can all see your creations!