Developing Vuforia Engine Apps for HoloLens


Vuforia Engine enhances the capability of HoloLens by allowing you to connect AR experiences to specific images and objects in the environment. You can use this capability to overlay step by step instructions on top of machinery or to add digital features to a physical product.

Based on the CAD data of your product or machinery the Hololens can detect these 3D objects robustly in the environment using Vuforia Model Targets technology. Augmented overlays can be authored directly against the CAD model so that your field workers see them right where you placed them.

Enterprise developers can use VuMarks to uniquely identify each piece of machinery on a factory floor, right down to the serial number. Additionally, VuMarks can be scaled into the billions and designed to look just like a company logo. 

Existing Vuforia Engine apps built for phones and tablets can be configured in Unity to run on HoloLens. You can even use Vuforia Engine to take your new HoloLens app to Windows 10 tablets such as the Surface Pro 4 and Surface Book.

The Role of Extended Tracking

Extended Tracking maintains tracking even when a target is no longer in view. It is automatically enabled for all targets when the Device Pose Observer is enabled. For HoloLens applications, the Device Pose tracking is started automatically in Unity, in native applications you need to be start it in every app.

Vuforia Engine automatically fuses the poses from camera tracking and HoloLens's spatial tracking to provide stable target poses independent of whether the target is seen by the camera or not.

Since the process is handled automatically, it does not require any programming by the developer.

The following is a high level description of the process:

  1. Vuforia Engine’s Observers recognizes the target.
  2. Target tracking is then initialized.
  3. The position and rotation of the target are analyzed to provide a robust pose estimate for HoloLens.
  4. Vuforia Engine transforms the target's pose into the HoloLens spatial mapping coordinate space.
  5. HoloLens takes over tracking if the target is no longer in view. Whenever you look again at the target, Vuforia will continue to track the images and objects accurately.

Targets that are detected, but no longer in view, are reported as EXTENDED_TRACKED. In these cases, the DefaultObserverEventHandler script that is used on all targets continues to render augmentation content. The developer can control this behavior by implementing a custom Observer event handler script.

Performance management on HoloLens

One consideration developers keep in mind when creating AR experiences for the HoloLens devices is the hardware capabilities of the devices. Intensive graphics, physics, and animations affect how long an AR app can run. Vuforia offers ways to manage the framerate and performance on the device depending on the use of static targets or targets that are expected to be moved around.

Developing a Vuforia app for HoloLens

The best way to understand the structure of a Vuforia Engine HoloLens project is by installing and building the Vuforia HoloLens sample project.  The sample provides a complete HoloLens project that includes pre-configured deployable scenes and project settings. Running the project will provide you a starting point and reference for your own Vuforia HoloLens apps.