AR Game with track recognition
With the launch of iOS 11 we got curious and wanted to create our own little fun AR game. We love muscle cars and the 80s and cactuses and ARcade games and the answer was ARiZONA RATTLESNAKE.
Special thanks to our friends and neighbours Loy and Sebastian from Loy Production who helped out with sound design and composed a super cool & funky Italo synth track for the game and teaser video.
The Idea Behind: Tracking
The core idea was that a user can draw his own individual racing track on a common sheet of paper and bring it to live using Augmented-Reality.
The user paints a closed line on a sheet of paper and scans it with the iPad. The scanning phase uses image processing to detect the sheet of paper in the camera image and extract the inner part. In a second step this inner part is used to find the contour of the race track.
The extracted contour is used to generate points along the racing track, which are then automatically transformed into a textured 3D mesh and displayed using Augmented-Reality. Additionally environment assets are placed randomly along the track, like for example mountains and cactuses, to enrich the racing track. This engages to user to create new racing tracks, since no game world will match a previous one.
After the game world is created, the race starts and the player has to complete three laps on their own race track as fast as possible. Similar to a slot car, the virtual racer follows the track automatically and the player can control speed and drift to master the race track in the shortest possible time. But beware - the car can loose friction in the curves and cause a crash. At the end of the race a high score is displayed, which can be challenged in the next game.
Animation & Video
The car animation for the teaser video was done in Akeytsu. Before we created a roadtrack for the video and imported it into Akeytsu to create a beliveable driving animation and let the car slide across the concrete.
Afterwards we exported the animation into cinema 4D to combine it with the other assets and also add the camera movement and create the light setup for the final rendering.
Graphics and development
The car and the environment assets were developed in 3ds Max and textured with Photoshop. To get the look for the mountains and stones we used a mixture of displacement modifier with height maps in 3ds Max and reduced the meshes with the ProOptimizer modifier, resulting in a much more organic lowpoly geometry than could have been done manually.
The game was developed in Unity3D. Using the image processing library OpenCV the race track is recognized and transformed into a virtual racing track. Finally Apples ARKit is used for displaying the content in Augmented-Reality.
One of the challenges was to detect the drawn line, since the contour detection would often recognize other contour-like shapes outside of the paper. To solve this, the first step was to find the sheet in the camera image and only evaluating contours inside of that image area.
Another difficulty was the automatic generation of the racing track mesh. Since the drawn contour is a simple line, the mesh has to be extended to both sides to yield enough space for the race car. Especially in sharp curves that lead to an overlap of generated mesh. To compensate for this after the generation of the mesh, overlapping points had to be identified and eliminated automatically to give the track a smooth look.
It's about detail
We created an AR experience that is unique and provides fun at the same time. ARiZONA Rattlesnake is a game with a high approach on visual design and a very clear user experience.