Home

Awesome

AR-Unity

This is an augmented reality application in the Unity game engine.

Requirements

This project is in two parts:

ALVARBridge

This bridge creates an unmanaged DLL called ALVARBridge.dll. We need it, since ALVAR is in C++, and Unity doesn't support it, but supports C# scripts instead. This allows us to call C++ functions in C# scripts.

The DLL

The following functions are used to detect markers in the image:

The ALVARBridge.dll is directly exported in the Assets\Plugins directory of the Unity application.

Markers

Since this is inspired by DemoMarkerField, a demo application provided with the ALVAR library, the markers used are the same as this demo. You can found it in the ALVAR.pdf. <img src="https://raw.github.com/bara3r/AR-Unity/master/AR-Unity/Assets/Materials/markerfield.png"/>

Calibration

You need to calibrate your webcam. See the manual and ALVAR internal samples on how to calibrate your camera. The XML files for the calibration are in the Assets\Calibrations directory of the Unity application.

The current calibration file used is specific to my webcam.

Since our goal is to use the [Vuzix's Wrap 920AR] (http://www.vuzix.com/consumer/products_wrap920ar.html), some calibration files for these augmented reality eyewear are also present. These Wrap920_*.xml files come from the [Goblin XNA] (https://goblinxna.codeplex.com/) framework.

AR-Unity

This is the Unity project.

The video stream of the webcam is projected on a plane, and an object ressembling a paper with markers is moving according to the detected markers. This object could be anything, as long as it is associated with the Marker.cs script.

Scene

There are four GameObjects in the scene:

C# scripts

Info

This project is part of our final project at EPITA.