AugAnimal

TamARgotchi Augmented Reality Animal Companion Game

Inspired by digital animal games like Tamagotchi, Neopets, and Pokémon Go, I created a AR pet game for people who want a pet but are unable to care for a real animal.

This game was created as a class project for HCI 580: Virtual Environments, Virtual Worlds and Applications. It was developed using:

  • Unity

  • Vuforia package

  • Microsoft Visual Studio

  • Lovely Animals PACK from the Unity Store

  • Music and sound effects from https://www.freesoundslibrary.com

  • ASUS computer/Windows 10

  • Galaxy S6 Android phone

Jump to:

UX Design

The user can view three different choices of AugAnimal by selecting a different image target, i.e., focusing their phone camera on the icon for the corresponding pet. The AugAnimals available are:

  • Duck

  • Penguin

  • Sheep

Each digital animal has three interactions, which increase the interaction count or “hearts” by one. These interactions are selected through a button-based UI:

  • Jump

  • Wobble

  • Praise

After five interactions, the AugAnimal will “level up”, where a message will appear on screen and a sound effect will play. One suggestion I received was to implement an interaction where the user taps the part of the screen where the animal appears, analogous to petting an animal in real life. This was implemented through raycasting.

Code snippet for tapping the AugAnimal to interact with it.

An introduction message will appear when the app is opened. Users can also turn the background music on or off, and reset the interaction count and level if they want to.

AugAnimal in progress.

UI Design

I decided to implement a button UI because I thought it would be easy for a user to get familiar with quickly. I wanted the three interaction buttons to be close together, but not so close that the user would accidentally press a button they didn’t intend to. I also wanted to display the interaction count and AugAnimal level, placing them away from the buttons to balance the overall spacing of UI elements.

Different concepts for the UI button layouts.

Vuforia Image Targets

Since I wanted the AugAnimal to appear when a target image was detected, I designed my own image targets and used the Vuforia package to handle image detecting and tracking. I chose to use this package because it was relatively straightforward to use, and I didn’t have prior knowledge of how to implement this technology from start to finish.

I learned that “sharp” features, such as corners, allowed for more detectable and consistent image tracking. It took a few iterations of image targets to get enough features that would allow for reliable tracking.

Earlier iteration of image target. Note the lack of sharp features near the center text, making the feature distribution less balanced throughout the space.

Final image target. The number of sharp image features was increased to allow for better image detection and tracking, while attempting to keep the feature distribution balanced.

Feedback and Response

From initial proposal to final presentation, AugAnimal was completed in two months. The project was presented to an audience of my classmates and project judges in early December 2021, and the final presentation video is available on YouTube.

It look me many, many tries to record a suitable app demo since I had a phone in each hand (one to press the buttons on the app and the other to record the hand pressing the buttons).

After the final presentation, I received feedback from the project judges on what they liked (UI design, fun concept), and features they would’ve liked to see (idle animations).

The final presentation received 17.64 out of 20 points. The overall project, including the initial proposal, literature/research review, and progress report, received 41 out of 45 points.

Professor’s name has been redacted for privacy, hence the black box in the image.

Lessons learned from AugAnimal include:

  • Getting familiar with Unity and C#

  • How to design trackable image targets

  • UI design and functional implementation

  • UX features to make a game fun and engaging

I hope you enjoyed reading about AugAnimal as much as I enjoyed bringing it to life!

Back to top