Getting Started with Vuforia Engine in Unity

Table of contents

Vuforia Engine in Unity

The Unity Editor is a popular and useful authoring platform to create cutting edge augmented reality experiences for both handheld devices and digital eyewear. Visit https://unity.com to download and set up Unity. The Vuforia Engine is easily added to any project, and our Core Samples are available in the Unity Asset Store to get you started.

About Vuforia Engine

Vuforia Engine is a software development kit (SDK) for creating Augmented Reality apps. Developers can easily add advanced computer vision functionality to any application, allowing it to recognize images and objects, and interact with spaces in the real world.  

Vuforia Engine supports AR app development for Android, iOS, Lumin, and UWP devices. See: Vuforia Engine Supported Versions

This Getting Started guide will show you:

  • How to add Vuforia Engine to your Unity project
  • How set up Vuforia Engine’s features in Unity 
  • How to add content and test your Unity project

Adding Vuforia Engine to a Unity project

The Vuforia Engine package can be added to a Unity project from a Git URL.

Import the utility script into your Unity project and it will make the necessary changes to your project:

The package will automatically add the latest Vuforia Engine version to your Unity project. For alternative import options, please see Vuforia Engine Package Hosting for Unity.

To manually check if new updates are available, go to Help -> Vuforia Engine -> Check for Updates:

Vuforia Engine Setup

The Vuforia Engine will be visible in the GameObject Menu

If this menu is not shown, this means that you did not install Vuforia with Unity (Unity versions before 2019.2) or did not add the Vuforia Engine package to your project (Unity 2019.2 and later).

Start by adding an ARCamera. This is a Unity camera game object that includes the VuforiaBehaviour to add support for augmented reality apps for both handheld devices and digital eyewear. 

Steps:

  1. Add an ARCamera GameObject from the Vuforia Engine menu. 
  2. Select the ARCamera and Open Vuforia Configuration from the Inspector
  3. Add a Vuforia Development License Key in the App License Key field. For a guide on getting a license key, see Vuforia License Manager

Tip: Delete the default Main Camera after adding an ARCamera. The ARCamera contains its own Camera component. The Main Camera is not needed unless you are using it to render a specific camera overlay, e.g. user interface.

Adding Vuforia Engine Features

After activating Vuforia Engine in Unity, you can add features from the Vuforia Engine menu to your project from the Unity GameObject Menu

Please refer to Features Overview for more information on all of the capabilities offered by the Vuforia Engine.

You can also add the Vuforia Core Samples from Unity’s Asset Store. The Core Samples include and demonstrate many of the Vuforia Engine Features. The steps below continue to set up a basic Vuforia AR scene. 

Steps:

  1. Navigate to the Vuforia Engine Menu and select Image Target. or any of the other targets you wish to use. (VuMark, Ground Plane, and Mid Air are also trackable targets).
    1. For configurations for using other targets, please consult the Features Overview linked just above. It presents Unity guides for each Vuforia target. 

Each Vuforia Engine GameObject can be configured in the Inspector.  When a target is added, it will appear in the Hierarchy

  1. Select the Image Target GameObject from the Hierarchy and choose from the Type dropdown either
    1. From Image – Please see Instant Image Targets on further steps from here.
    2. From database – Image Target databases can be made in the Vuforia Target Manager
  2. In this example, we select From Database

We currently have not added a database with Image Targets to the project. Vuforia will therefore ask you if you wish to Import Default Image Target Database in a pop-up window.

  1. Press Import. 

TIP: Maintain an accurate scale between the Vuforia targets and physical prints or objects. Using targets that deviate in size from the real-life object you wish to track might impact the quality. See Virtual Scene Scale in Unity for more information.

Adding Digital Assets

We can now add digital content to your target. You can do this by adding your assets as children of the target in the scene Hierarchy. Parenting content with a target object automatically sets up the necessary rendering and physics behaviors. (see: DefaultTrackableEventHandler.cs).

  1. Add content as a child of the target by dragging your content on top of the target. 
    • This can also be a simple Cube from GameObject -> 3D Object -> Cube or you can place content from Unity’s Asset Store and even from our Core Samples as pictured above.  

Print Physical Targets

A Vuforia target is in most cases, a physical print or object. If you have imported the Core Samples, you can find these in /Editor/Vuforia/ForPrint as PDFs. All printable Vuforia targets are also available here: Printable Target pdfs

Print without scaling. 

Playing the Scene

To see your scene in action you can use the Vuforia Engine Play Mode in the Game View that you can activate by pressing the Play button. You can use this feature to evaluate and rapidly prototype your scene(s) without having to deploy to a device.  

Play Mode is configured in the Vuforia Configuration section and you may use a webcam, simulator modem, or recording mode to test your Vuforia targets. See Vuforia Play Mode in Unity for more information.

Building and running your app

Vuforia Engine-powered Unity apps are built and run in the same way as other Unity apps for Android, iOS, and UWP.

See Unity’s tutorial on build for mobile and their documentation for build settings on all supported platforms.

Configuring a project for Digital Eyewear

Vuforia Engine supports a variety of optical and video see-through stereo rendering displays, including HoloLens, Magic Leap and Vuzix M300. Refer to the Digital Eyewear article for more information.

Next Steps

Essentials

Vuforia Engine Package Hosting for Unity 

Vuforia Play Mode in Unity

Working with Vuforia Engine in Unity

Learn More

How to Create and Load Targets in Unity

How To Use Android Plugins in Unity Apps

Virtual Scene Scale Factor in Unity

Using ARCore in Unity

Building Large Vuforia Engine Apps in Unity

AR Foundation

How to Use Vuforia Engine and AR Foundation in Separate Unity Scenes