Patrick O'Shaughnessey, Founder of Patched Reality Inc, gives an overview of AR SDK tutorial options, and tutorials using 4 of the most widely used SDK's in Unity 3D.
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial
1. Mobile AR SDK Tutorial
Augmented World Expo, June 3rd, 2013
Patrick
O’Shaughnessey
@patchedreality
patrick@patchedreality.com
http://patchedreality.com
2. Patched Reality, Inc
Custom Augmented Reality Software
Using the Best-in-breed SDK’s since 2009
http://patchedreality.com
3. Agenda
Mobile SDK Comparison & Tutorial
Patched Reality – Patrick O’Shaughnessey
SDK Vendor Tutorials
• 13th Lab - Oskar Linde
• metaio - Ben Blachnitzky
• Qualcomm - Roy Ashok
• Total Immersion - Benjamin Zysberg
• Wikitude - Martin Lechner
4. What’s the purpose of an AR SDK?
Simplifies one or more of:
• Recognition – What to track
• Tracking – Where it is (3D pose)
• Content rendering – Your Interesting Stuff
5. Tracking Types
• GPS + Compass + Gyro + Accelerometer
• Marker (Fiduciary, frame, etc)
• NFT (2D images)
• Pre-trained
• Cloud recognized
• User-defined
• 3D (Pre-trained point cloud)
• Live 3D (SLAM)
• Face, Fingers, Body
• Robot
6. Mobile AR SDKs Short List
SDK Purpose Tracking Platform Graphics Cloud GP
S
License
Qualcomm
Vuforia
2D Images,
Markers
NFT,
Marker,
Text
iOS, Android Unity3D&
Alt.
yes no Free
Metaio
SDK
2D Images,
GEO, 3D,
Anywhere
NFT, GPS,
3D, SLAM
iOS, Android Unity3D
&Alt.
yes yes 0-$10,000
TotalImm.
D’fusion
2D Images,
faces
NFT, Face iOS, Android
Dev: MS
only
Unity3D &
Alt.
no no 0-$10,000
WikitudeSD
K
2D Images,
GEO
GPS, NFT iOS, Android,
Blackberry
HTML,
Proprietary
yes yes 0-$2,300
Layar SDK 2D images NFT, QR iOS, Android Proprietary yes no $3,250/ap
p/yr +
$20/page
13th Lab
Point Cloud
2D Images,
3D,
Anywhere
NFT, 3D,
SLAM
iOS, Android Unity3D &
Alt.
no no 0-$5,000
7. Mobile AR SDKs Short List – Cont’d
SDK Purpose Tracking Platform Graphics Cloud GP
S
License
AR Toolkit 2D Markers
2D Images
NFT,
Marker
iOS,Android Unity3D &
Alt.
no no $0 (GPL) -
$2,495 +
royalty
HP
Aurasma
SDK
VFX, Videos
on 2D Images
NFT iOS, Android Proprie-
tary
yes yes Per click
Obvious
Engine
2D images,
Cylinders
NFT,
Cyl.
iOS, Android Unity3D &
Alt.
no no $8000/ap
p/plaform
String Framed 2D
images
Framed
Image
iOS Unity3D &
Alt.
no no $499
-
$8000/ap
p/year
Orbotix Robotic AR Sphero iOS, Android Unity3D no no Free
8. SDK Development On Ramp
1) Set up Dev Environment
• Xcode (iOS)
• Eclipse (Android)
• Android SDK
• Android NDK
• Unity 3D
2) Download SDK
3) Install and run samples
9. SDK Development with Unity
1) Create Project
2) Wire up SDK - camera setup, licensing, etc
3) Set up recognition and tracking configuration
4) Add scene content and interactions
5) Build, Run, Test
6) Repeat 3-5
7) Ship
10. NFT Setup – ARToolkit
1) Import ARToolKit4Unity.unitypackage
2) Add ARToolkit script to empty game object
3) Create “AR foreground/background” Layers
4) Set Layer of ARToolkit object to “AR background”
5) Create NFT dataset with command-line tools
6) Add NFT dataset to StreamingAssets
7) Add Marker script to ARTookit object
8) Add TrackedCamera script to Camera
9) Set marker tag in Marker and TrackedCamera
11. NFT Setup – ARToolkit
10)Set culling mask for TrackedCamera to AR
foreground
11)Create Common parent object for AR content
and TrackedCamera
12)Set Layer of All scene objects to “AR
foreground”
13)Build Xcode project
14)Add missing libraries to target
15. NFT Setup - Vuforia
1) Import Unity package
2) Replace MainCamera with ARCamera prefab
3) Add ImageTarget prefab
4) Add content to ImageTarget
5) Create target using “Target Manager” at
developer.vuforia.com
6) Download and Import target package
7) Enable Data Set load on ARCamera
8) Select Data Set and Image Target on ImageTarget
9) Build and Run
10) Add QCARUnityPlayer.h to Libraries Group in XCode
18. SLAM Setup – Pointcloud
http://pointcloud.io
1) Import the PointCloudUnityPlugin package.
2) Add PointCloudBehavior script to camera
3) Add PointCloudSceneRoot script to scene root
4) Create script to initialize SLAM (e.g. button)
5) Set Application Key via PointCloud menu
6) Build and Run
20. SLAM Setup - metaio
1) Import metaioSDK.unitypackage
2) Add metaioSDK prefab to scene
3) Delete Main Camera
4) Generate app signature (mobiledeveloperportal.ar-
live.de)
5) Add app signature to metaioSDK
6) Add metaioTracker prefab to scene
7) Add scene root to metaioTracker object
8) Add instantTracking script to metaioTracker
9) Edit instantTracking script and change
trackingConfiguration to “INSTANT_3D”
10) Build and run
11) Add missing libraries to Xcode project