AR avatar

Table of Contents

Introduction

This project incorporates sound, lighting, physics, animations, and buttons to create a "playset" in 2 different scales - a tabletop version and a life-size version.

Description

Tabletop Version

My project features an avatar of me dancing in my office because I am excited I finished a cool project. Here are some screenshots from the tabletop version.

It also incorporates physics by adding (on the drone marker) a plane the same size as my tabletop with a collider and colliders on all the objects in the scene. When you press the mouse, a flurry of red bouncy balls rains down from the sky, colliding with and rolling around the table and the objects in the scene.

Another feature of the table-top playset is a virtual button on the astronaut marker. The button says "press to talk" and when it is pressed, the avatar stops dancing, gestures toward the computer, and says "Check out this awesome AR project I built!" Then they go back to dancing, all with smooth transitions.

Life-size Version

To run the life-size version, you have to use the Vuforia ground plane marker to find the ground. Once the ground plane is scanned, just click and the scene will appear around you. Here's a screenshot of the playset in my living room.

Video

Here's a link to a video of the project in action: https://www.youtube.com/watch?v=L_kkQlF2N3c&ab_channel=CS428

Code

Source code: https://github.com/zaynabj/project2

Instructions to build and run:

First you need to install Unity

  1. Go to https://unity.com/ and download and install UnityHubSetup

  2. Open Unity Hub and click on Installs, and then click Add

  3. Click the download archive, and click on the Unity 2019.x tab

  4. Find Unity 2019.4.1f1 and download to Unity Hub. Install Unity, documentation, and the build support for your machine

Next you need to install Vuforia

  1. Create a free developer account at https://developer.vuforia.com/

  2. Open Unity 2019.4.1f1and create a new 3D project

  3. Go to https://developer.vuforia.com/downloads/sdk and select "Add Vuforia Engine to a Unity Project or upgrade to the latest version"

  4. Opening the downloaded file should take you to your Unity project where you can import Vuforia

Finally, to open and run my project in Unity:

  1. Go to https://github.com/zaynabj/project2, select Code, and in the drop down, select download zip. Once downloaded unzip/extract it.

  2. Open Unity Hub, go to the projects tab, select ADD, and add the unzipped folder.

  3. In Unity, navigate to assets/scenes and you will see two scenes - "lifesize" and "tabletop" Select the one you want to run.

  4. To run it inside Unity press the play icon.

Sources

Clothing models:

Laptop: https://assetstore.unity.com/packages/3d/props/electronics/hq-laptop-computer-42030

Large Plant: https://assetstore.unity.com/packages/3d/vegetation/plants/plants-150261

Mug: https://assetstore.unity.com/packages/3d/props/interior/ygs-mugs-96665

Drawers and Lamp: https://assetstore.unity.com/packages/3d/props/interior/lamp-model-110960

Couch and Small Plant: https://assetstore.unity.com/packages/3d/props/furniture/toon-furniture-88740

Pencil and Notebook: https://assetstore.unity.com/packages/3d/school-supplies-96667

Background music: https://freesound.org/people/tyops/sounds/484301/

Discussion

Can these types of playsets become popular in several years if people are regularly wearing AR glasses? Would kids want to interact with a figure that looks like themselves? I think the answer to both of these questions is yes, it is certainly possible. I enjoyed building this project and enjoyed playing with it, and I think many people would feel the same. I think kids would be excited about the idea of an avatar that looks like themselves. In fact, this is already very common in gaming. Many games allow the player to create a customized avatar, and people generally will do it and find it fun. It makes the game more immersive. This is the same concept, but in 3D. If the user were able to customize their face, clothes, expressions, hair, etc, it would be like playing dress up (a timeless game children have always loved), but a high-tech version of it, with many more options. Some types of technology seem to inhibit kids creativity as kids turn to the technology for entertainment instead of using their imaginations, but this type of technology has the potential to encourage imagination, and also would provide kids with the possibility to see what they imagine materialize in front of them.

On the other hand, this technology also runs the risk of veering into "uncanny valley" territory if the figures become too realistic. I did not feel creeped out by seeing my avatar, in either the small version or the lifesize one, and I think this is partially because I made it, and partially because the figure clearly looked digital, not human. The graphics were good but not super realistic and it was pretty easy to distinguish between the real world and the augmented one. I think this is good because that made the human figure less creepy, for the most part (except for the eyes, those were a little creepy).