One design problem we faced implementing ARKit into Waggle Words related to scale and perspective.

First, a little background information: Waggle Words is a 3D game originally designed for for iOS and then diverged into SteamVR development. We have hundreds of hive layouts (with infinite letter configurations), all of which are up to 3 stories tall and dozens of meters from the camera. In vanilla iOS, this works fine with our camera field of view and focal length settings. In VR, this works fine was well. In AR there were some problematic results!

The primary issue that resulted from a huge hive, which is very far from the camera in AR, is the following: Even though the hive looked the right size (same as in vanilla iOS mode), one could rotate away from the hive, but not walk closer or further away from the hive!

This is not an expected behavior for AR! Our play testers that were familiar with AR, all pointed this out immediately after demoing our beta builds! Others, who were not so familiar with AR, didn't seem to notice what was wrong, but felt something was off.

Our solution came to use via a tip from someone at Unity Labs! The Unity ARKit plugin is available on the Unity Asset Store; however, one may download the plugin directly from Unity's BitBucket Repo! More specifically, the Unity-ARKit-Plugin repo has a scaled-content-test branch which offered us our solution! (This branch has been merged into the main branch as of a day or so ago).

We now implement one AR camera to track the world and give us the video feed, and another camera which we scale to track the hive! This is a simplified explanation, but essentially the result is a convincing AR experience! One may now walk up, around, away from and through a hive!

We hope this is helpful to all those developing for ARKit in Unity! For more tips on ARKit with Unity, check out Unity's ARKit forum!