Introduction to Augmented Reality with Unity3D, Vuforia & String
Example implementations (iOS):
Other Side - Pantalla Global:
http://itunes.apple.com/app/other-side/id495565861
1 of 39
Downloaded 999 times
More Related Content
Introduction to AR with Unity3D
1. AR with Unity3D
Introduction to Augmented Reality
with
Unity3D
Saturday, May 26, 12
2. Intro
Examples
Pantalla Global (CCCB)
Animac
Sal坦n de Turisme
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
3. Koffa@Animac
http://vimeo.com/37868229
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
4. What is AR?
Virtual content overlayed onto the real
word
2D / 3D & audio
Realtime / Live camera view
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
5. Detection
Vision based
QR codes
Markers
Real life objects
Location based (GPS, Compass)
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
6. Vision Based AR
Tracking
Frame by frame analysis searching for
trackables
Return position and orientation relative to
device
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
7. AR Apps
Layar
http://www.layar.com/
Junaio
http://www.junaio.com/
Wikitude
http://www.wikitude.com/
Appunta ;-)
http://appunta.com/
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
8. Use
Arts & Gaming
Advertising
Navigation
Tourism
Education
... and a lot more
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
9. Unity3D Libraries
String
www.poweredbystring.com
Vuforia (Qualcomm)
https://developer.qualcomm.com/mobile-development/mobile-
technologies/augmented-reality
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
10. String - Tracking
Framed Markers
Multiple marker detection
<= 10
Un鍖exible marker creation
black border surrounded by a white border
necessary
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
11. String - Tracking
Any png
Full marker has to be in camera (>85%)
Markers not in scene
di鍖cult scaling
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
12. Vuforia - Tracking
Image Target
Frame Markers
Simple 3D Objects (Boxes)
More 鍖exible than String on marker
creation
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
13. Vuforia - Tracking
Multiple Image Targets or Frame Markers
<= 5
Works if only part of the marker is seen
Markers placed into 3D Scene
easy scaling
Virtual Buttons
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
14. Target Management
Online
ImageTargets
MultiTargets
jpg & png
RGB & B&W
!
Rich in detail
High in contrast
Scaling (Unity units) No repetitive patterns
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
15. Performance
String a little bit faster in detection and
tracking
String is more stable
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
16. Platform support
Vuforia
Android & iOS
String
iOS
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
17. String - Setup
Download library
Unity3d
iOS
Add to Unity3D project
Add to XCode project
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
18. Vuforia - Setup
Download Vuforia library
available in Assets Store
Add to Unity3D Project
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
19. Testing
String:
In-Editor testing using webcam
Vuforia:
! Unity Remote
No image tracking nor life camera
Device Only Testing
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
20. Licensing
Unity / Unity iOS / Unity Android
https://store.unity3d.com/
String
Expensive!
http://www.poweredbystring.com/licensing
Vuforia
Free!!!
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
21. Decision ???
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
23. Requirements iOS
Mac OS Snow Leopard & Lion
XCode
https://ar.qualcomm.at/qdevnet/sdk/ios
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
24. Requirements Android
MS Windows 7 & XP
Linux & Mac OS posssible but not
documented
JDK + Eclipse + ADT
Android SDK + NDK
https://ar.qualcomm.at/qdevnet/sdk/android
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
25. Installation
Download pagackage vuforia-unity-OS-
Version.zip and install
base extension & samples
Asset Store
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
26. Simple Project
New project
Add Vuforia
Add Dataset (markers)
Add ARCamera Prefab to scene
Add ImageTarget Prefab to scene
Select Dataset and ImageTarget
Add 3D objects + Light
Set Load Dataset
Deploy
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
27. Unity Folder Structure
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
28. Hands-On
DroidBalls
Floating spheres in space
Touch to dissappear
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
29. Raycasting
Detect 3D object touched on screen
Ray from touched screen point to
camera
Detect object collisions
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
30. Tracking
ITrackableEventHandler
OnTrackableStateChanged
DefaultTrackableEventHandler
enable/disable rendering
ITrackerEventHandler
OnTrackablesUpdated
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
31. Splash Screen
Display when no marker is detected
Modify ITrackableEventHandler
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
32. Virtual Buttons
Hotspots on an ImageTarget
IVirtualButtonEventHandler
OnVirtualButtonPressed
OnVirtualButtonReleased
Can be created at runtime
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
33. Problems
Perfomance
Image Recognition
symmetry / similar elements
contrast / illumination
Real world sizing
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
34. Problems
Fixed camera vs 鍖xed space
Physics!!!
Multiple markers
center???
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
35. Tips & Advices
3D Models
< 2K polygons overall
< 200 polygons/object (draw calls)
<= 3 materials/object
! Device dependent
Animations
< 30 bones
Use texture sequences
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
36. Tips & Advices
Attach markers to cardboard
Good lightning but avoid re鍖ections
Disable objects that are not in view
Test using mouse instead of touch
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
37. Tips & Advices
Scale correctly from the beginning
Create simple reference objects to map to
real world
e.g. cubes
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
38. Resources
Unity3D
http://forum.unity3d.com
http://answers.unity3d.com
Vuforia Forums
https://ar.qualcomm.at/qdevnet/forums
String ???
AR with Unity3D 26/05/2012 - CatDroid Unity3D II @aquarioverde
Saturday, May 26, 12
39. Thank you!
Andreas Blick @aquarioverde
Saturday, May 26, 12