SlideShare a Scribd company logo
AR with Unity3D
                        Introduction to Augmented Reality
                                       with
                                     Unity3D




Saturday, May 26, 12
Intro

                       • Examples
                        •   Pantalla Global (CCCB)

                        •   Animac

                        •   Salón de Turisme




                AR with Unity3D        26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
Koffa@Animac


                                  http://vimeo.com/37868229




                AR with Unity3D        26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
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
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
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
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
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
String - Tracking
                       • Framed Markers
                       • Multiple marker detection
                        •   <= 10

                       • Unflexible marker creation
                        •   black border surrounded by a white border
                            necessary


                AR with Unity3D        26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
String - Tracking
                       • Any png

                       • Full marker has to be in camera (>85%)

                       • Markers not in scene
                        •   dificult scaling

                AR with Unity3D          26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
Vuforia - Tracking
                       • Image Target
                       • Frame Markers
                       • Simple 3D Objects (Boxes)

                       • More flexible than String on marker
                         creation

                AR with Unity3D      26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
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
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
Platform support

                       • Vuforia
                        • Android & iOS

                       • String
                        • iOS
                AR with Unity3D    26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
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
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
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
Decision ???




                AR with Unity3D     26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
Vuforia



Saturday, May 26, 12
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
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
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
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
Unity Folder Structure




                AR with Unity3D   26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
Hands-On

                       • DroidBalls
                        • Floating spheres in space
                        • Touch to dissappear

                AR with Unity3D      26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
Tracking
                       • ITrackableEventHandler
                        •   OnTrackableStateChanged

                        •   DefaultTrackableEventHandler

                            •     enable/disable rendering



                       • ITrackerEventHandler
                        •   OnTrackablesUpdated

                AR with Unity3D            26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
Splash Screen


                       • Display when no marker is detected
                       • Modify ITrackableEventHandler


                AR with Unity3D      26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
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
Problems

                       • Fixed camera vs fixed space
                        • Physics!!!
                        • Multiple markers
                           •      center???



                AR with Unity3D               26/05/2012 - CatDroid Unity3D II   @aquarioverde

Saturday, May 26, 12
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
Tips & Advices
                       • Attach markers to cardboard
                       • Good lightning but avoid reflections

                       • 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
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
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
Thank you!
                       Andreas Blick   @aquarioverde




Saturday, May 26, 12

More Related Content

PDF
COMP 4010 Lecture9 AR Interaction
PDF
Virtual Reality PPT
PPTX
Virtual Reality
PPTX
Virtual reality
PPTX
VR/AR/MR in education
PDF
PPTX
Virtual Reality and its impact
PPTX
Virtual reality (vr) presentation
COMP 4010 Lecture9 AR Interaction
Virtual Reality PPT
Virtual Reality
Virtual reality
VR/AR/MR in education
Virtual Reality and its impact
Virtual reality (vr) presentation

What's hot (20)

PDF
Comp4010 Lecture4 AR Tracking and Interaction
PPTX
Game Development with Unity
PDF
Web 3.0 Metaverse
PPTX
Virtual Reality
PPTX
HCI : Virtual reality (AUGMENTED & MIXED REALITY)
PPT
Virtual Reality
PDF
The Basics of Unity - The Game Engine
PDF
Comp 4010 2021 Lecture1-Introduction to XR
PPTX
Virtual reality
PDF
Introduction to Extended Reality - XR
PPTX
Virtual reality
DOCX
Augmented reality documentation
DOCX
Mixede reality project report
PPTX
AR & VR technology
PPT
Augmented reality
PPT
Virtual Reality
PPTX
screen less display
PPTX
Mixed Reality Technology ppt
PPTX
Virtual reality
PPTX
Virtual Reality and Augmented Reality
Comp4010 Lecture4 AR Tracking and Interaction
Game Development with Unity
Web 3.0 Metaverse
Virtual Reality
HCI : Virtual reality (AUGMENTED & MIXED REALITY)
Virtual Reality
The Basics of Unity - The Game Engine
Comp 4010 2021 Lecture1-Introduction to XR
Virtual reality
Introduction to Extended Reality - XR
Virtual reality
Augmented reality documentation
Mixede reality project report
AR & VR technology
Augmented reality
Virtual Reality
screen less display
Mixed Reality Technology ppt
Virtual reality
Virtual Reality and Augmented Reality
Ad

Recently uploaded (20)

PDF
Modernizing your data center with Dell and AMD
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
KodekX | Application Modernization Development
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Modernizing your data center with Dell and AMD
Dropbox Q2 2025 Financial Results & Investor Presentation
KodekX | Application Modernization Development
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
Spectral efficient network and resource selection model in 5G networks
Chapter 3 Spatial Domain Image Processing.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Building Integrated photovoltaic BIPV_UPV.pdf
NewMind AI Monthly Chronicles - July 2025
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Encapsulation theory and applications.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Reach Out and Touch Someone: Haptics and Empathic Computing
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Ad

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 • Unflexible 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 • dificult 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 flexible 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 fixed 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 reflections • 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