augmented world expo 2013 mobile ar sdk comparison and tutorial

30
Mobile AR SDK Tutorial Augmented World Expo, June 3rd, 2013 Patrick O’Shaughnessey @patchedreality patrick@patchedreal ity.com

Upload: patrick-oshaughnessey

Post on 09-May-2015

8.975 views

Category:

Technology


0 download

DESCRIPTION

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.

TRANSCRIPT

Page 1: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Mobile AR SDK Tutorial

Augmented World Expo, June 3rd, 2013

Patrick O’Shaughnessey

@[email protected] http://patchedreality.com

Page 2: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Patched Reality, IncCustom Augmented Reality SoftwareUsing the Best-in-breed SDK’s since 2009

http://patchedreality.com

Page 3: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

AgendaMobile SDK Comparison & Tutorial

Patched Reality – Patrick O’ShaughnesseySDK Vendor Tutorials

• 13th Lab - Oskar Linde• metaio - Ben Blachnitzky• Qualcomm - Roy Ashok• Total Immersion - Benjamin Zysberg• Wikitude - Martin Lechner

Page 4: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

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

Page 5: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

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

Page 6: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Mobile AR SDKs Short ListSDK Purpose Tracking Platform Graphics Cloud GPS License

QualcommVuforia

2D Images, Markers

NFT, Marker,Text

iOS, Android Unity3D & Alt.

yes no Free

MetaioSDK

2D Images, GEO, 3D, Anywhere

NFT, GPS,3D, SLAM

iOS, Android Unity3D & Alt.

yes yes 0-$10,000

Total Imm. D’fusion

2D Images, faces

NFT, Face iOS, AndroidDev: MS only

Unity3D & Alt.

no no 0-$10,000

Wikitude SDK

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/app/yr + $20/page

13th Lab Point Cloud

2D Images,3D, Anywhere

NFT, 3D,SLAM

iOS, Android Unity3D & Alt.

no no 0-$5,000

Page 7: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Mobile AR SDKs Short List – Cont’dSDK Purpose Tracking Platform Graphics Cloud GPS License

AR Toolkit 2D Markers2D Images

NFT,Marker

iOS, Android Unity3D &Alt.

no no $0 (GPL) - $2,495 + royalty

HPAurasma 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/app/plaform

String Framed 2D images

Framed Image

iOS Unity3D & Alt.

no no $499-$8000/app/year

Orbotix Robotic AR Sphero iOS, Android Unity3D no no Free

Page 8: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SDK Development On Ramp

1) Set up Dev Environment• Xcode (iOS)• Eclipse (Android)• Android SDK• Android NDK• Unity 3D

2) Download SDK3) Install and run samples

Page 9: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SDK Development with Unity

1) Create Project2) Wire up SDK - camera setup, licensing, etc3) Set up recognition and tracking configuration4) Add scene content and interactions5) Build, Run, Test6) Repeat 3-57) Ship

Page 10: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup – ARToolkit1) Import ARToolKit4Unity.unitypackage2) Add ARToolkit script to empty game object3) Create “AR foreground/background” Layers4) Set Layer of ARToolkit object to “AR background”5) Create NFT dataset with command-line tools6) Add NFT dataset to StreamingAssets7) Add Marker script to ARTookit object8) Add TrackedCamera script to Camera9) Set marker tag in Marker and TrackedCamera

Page 11: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup – ARToolkit10) Set culling mask for TrackedCamera to AR

foreground11) Create Common parent object for AR content

and TrackedCamera12) Set Layer of All scene objects to “AR

foreground”13) Build Xcode project14) Add missing libraries to target

Page 12: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup – ARToolkitMissing Libraries:Accelerate.framework (weak-linked)AudioToolbox.frameworkAVFoundation.frameworkCoreGraphics.frameworkCoreMedia.frameworkCoreVideo.frameworkOpenGLES.frameworkQuartzCore.frameworklibjpeg (libjpeg.a from ARToolKit for iOS)libstdc++.6

Page 13: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup - ARToolkit

Page 14: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup - ARToolkit

Page 15: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup - Vuforia

1) Import Unity package2) Replace MainCamera with ARCamera prefab3) Add ImageTarget prefab 4) Add content to ImageTarget5) Create target using “Target Manager” at

developer.vuforia.com 6) Download and Import target package7) Enable Data Set load on ARCamera8) Select Data Set and Image Target on ImageTarget9) Build and Run10) Add QCARUnityPlayer.h to Libraries Group in XCode

Page 16: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

NFT Setup - Vuforia

Page 17: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Differences

Pointcloud vs. metaio SLAM:- Pointcloud creates a ground plane from points- metaio aligns to gravity

Page 18: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup – Pointcloudhttp://pointcloud.io

1) Import the PointCloudUnityPlugin package. 2) Add PointCloudBehavior script to camera3) Add PointCloudSceneRoot script to scene root4) Create script to initialize SLAM (e.g. button) 5) Set Application Key via PointCloud menu6) Build and Run

Page 19: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup – Pointcloudhttp://pointcloud.io

Page 20: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup - metaio

1) Import metaioSDK.unitypackage2) Add metaioSDK prefab to scene3) Delete Main Camera4) Generate app signature (mobiledeveloperportal.ar-live.de)5) Add app signature to metaioSDK6) Add metaioTracker prefab to scene7) Add scene root to metaioTracker object8) Add instantTracking script to metaioTracker9) Edit instantTracking script and change

trackingConfiguration to “INSTANT_3D”10) Build and run11) Add missing libraries to Xcode project

Page 21: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup - metaio

Missing Libraries:metaiosdkCoreMediaCoreVideolibxml2.dylibAVFoundation

Page 22: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup - metaiohttps://mobiledeveloperportal.ar-live.de/index.php

Page 23: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

SLAM Setup - metaio

Page 24: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Other Rendering Options

OpenGLHTML & Javascript- 13th Lab Pointcloud Browser- metaio AREL- Wikitude

Page 25: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Tools for Non-Programmerswww.metaio.com/products/creator/

Page 26: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Tools for Non-Programmerswww.layar.com/creator

Page 27: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Tools for Non-Programmersstudio.aurasma.com

Page 28: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Tools for Non-Programmerswww.ar-code.it

Cloud Campaign Editor

Page 29: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Tools for Non-Programmersstudio.wikitude.com

Page 30: Augmented World Expo 2013 Mobile AR SDK Comparison and Tutorial

Thank You!

Patrick O’Shaughnessey

@[email protected] http://patchedreality.com