AR Foundation

From ETC Public Wiki
Jump to: navigation, search

AR Foundation is Unity's effort to unify handheld AR development by offering a common API which supports core functionality for both ARCore and ARKit. It's very easy to learn and reasonably powerful!

It's capable of:

  1. Plane detection (vertical & horizontal): detect real-world objects like floors, table tops, walls, and construct plane meshes to represent them in real time.
  2. Point cloud: Individual reference points used to generate planes
  3. Light estimation: Estimate lighting in the room and light the virtual objects accordingly
  4. Raycasting: Raycast against planes and virtual objects.

Getting Started

How to start playing around:

  1. Make sure you have Unity 2018.1 or higher
  2. Clone or download Unity's AR Foundation Samples from Github, open it up in Unity
  3. In Window->Package Manager, make sure you have at least one of ARKit XR Plugin and ARCore XR Plugin imported. (For BVW Round3, you need only ARCode XR Plugin)
  4. Open up building settings, select your target platform and build (For BVW Round 3, you will be building to Android, if you have problems building for Android, see "Programming Information" session)
  5. Load the build to your phone and start playing with it!
  6. (With the tools offered by AR Foundation, you can make silly funny things like the one on the right easily)

Programming Information

Building for android

The best thing about working with Android over iOS is the super simple build and testing pipeline. If you connect the phone to your PC, Unity allows you to simply build and run the game on your phone, just like on PC.

  1. Make sure your Unity has Android Build Support. You can check this by checking if Android is listed as a target platform in Unity's Build Settings. If not, you can install the build support with Unity installer(Make sure you download the version that matches your Unity)
  2. Download JDK and Android SDK or make sure you have them
  3. You can either connect the phone to your machine and "Build and Run" with Unity, or just "Build" and transfer the apk to the phone through Google Drive/Box/USB/anything


Art (2D & 3D) Information

  • Phones today are powerful, but not yet as powerful as VR ready PCs. So keep this in mind while making the art assets - But don't be too limited! You can always experiment with the device, benchmark it, profile your game, etc., and find out what's practical on them.

Sound Information

  • Unlike VR and some other AR devices like HoloLens and Meta2, the sound for handheld AR is coming from the phone. As you may have realized - 3D sound may not be as effective for handheld AR! But other than that, this platform doesn't impose any restriction on sound design.

Design Guidelines & Tips

Example Projects

  • AR Foundation Samples: Official sample projects from Unity that utilize AR Foundation and demonstrates its functionality with sample assets and components. This is a good starting point.
  • Slime Lord , made with AR Kit, a game about stacking jelly cubes

Previous ETC Projects

The projects listed here are not exclusively built with Unity's AR foundation, but they are all fall in the category of handheld AR.


For BVW Fall 2018 Round 3 specifically, you will be using Google Pixel XL released in Oct 2016.