SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Comp4010 lecture3-AR Technology
Comp4010 lecture3-AR TechnologyComp4010 lecture3-AR Technology
Comp4010 lecture3-AR TechnologyMark Billinghurst
 
Game Development with Unity
Game Development with UnityGame Development with Unity
Game Development with Unitydavidluzgouveia
 
Developing VR Experiences with Unity
Developing VR Experiences with UnityDeveloping VR Experiences with Unity
Developing VR Experiences with UnityMark Billinghurst
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game EngineMohsen Mirhoseini
 
Augmented reality report
Augmented reality reportAugmented reality report
Augmented reality reportSatyendra Gupta
 
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術 次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術 Masafumi Takahashi
 
Virtual reality vs. augmented reality
Virtual reality vs. augmented realityVirtual reality vs. augmented reality
Virtual reality vs. augmented realityPixel Crayons
 
Mixed Reality in the Workspace
Mixed Reality in the WorkspaceMixed Reality in the Workspace
Mixed Reality in the WorkspaceMark Billinghurst
 
Empathic Computing: Developing for the Whole Metaverse
Empathic Computing: Developing for the Whole MetaverseEmpathic Computing: Developing for the Whole Metaverse
Empathic Computing: Developing for the Whole MetaverseMark Billinghurst
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity IntroductionJuwal Bose
 
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならねUnityTechnologiesJapan002
 
Unreal Engine.pptx
Unreal Engine.pptxUnreal Engine.pptx
Unreal Engine.pptxSujitShejul1
 
COMP 4010 Lecture7 3D User Interfaces for Virtual Reality
COMP 4010 Lecture7 3D User Interfaces for Virtual RealityCOMP 4010 Lecture7 3D User Interfaces for Virtual Reality
COMP 4010 Lecture7 3D User Interfaces for Virtual RealityMark Billinghurst
 
Introduction to Virtual Reality
Introduction to Virtual RealityIntroduction to Virtual Reality
Introduction to Virtual RealityKAVITHADEVICS
 
Talk to Me: Using Virtual Avatars to Improve Remote Collaboration
Talk to Me: Using Virtual Avatars to Improve Remote CollaborationTalk to Me: Using Virtual Avatars to Improve Remote Collaboration
Talk to Me: Using Virtual Avatars to Improve Remote CollaborationMark Billinghurst
 

Mais procurados (20)

Comp4010 lecture3-AR Technology
Comp4010 lecture3-AR TechnologyComp4010 lecture3-AR Technology
Comp4010 lecture3-AR Technology
 
Game Development with Unity
Game Development with UnityGame Development with Unity
Game Development with Unity
 
Unity3D Programming
Unity3D ProgrammingUnity3D Programming
Unity3D Programming
 
Developing VR Experiences with Unity
Developing VR Experiences with UnityDeveloping VR Experiences with Unity
Developing VR Experiences with Unity
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game Engine
 
Unity - Game Engine
Unity - Game EngineUnity - Game Engine
Unity - Game Engine
 
Lecture1 introduction to VR
Lecture1 introduction to VRLecture1 introduction to VR
Lecture1 introduction to VR
 
Unity 3D, A game engine
Unity 3D, A game engineUnity 3D, A game engine
Unity 3D, A game engine
 
unity basics
unity basicsunity basics
unity basics
 
Augmented reality report
Augmented reality reportAugmented reality report
Augmented reality report
 
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術 次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
次の世代のインタラクティブレンダリング5つの挑戦と10の滅ぶべき技術
 
Virtual reality vs. augmented reality
Virtual reality vs. augmented realityVirtual reality vs. augmented reality
Virtual reality vs. augmented reality
 
Mixed Reality in the Workspace
Mixed Reality in the WorkspaceMixed Reality in the Workspace
Mixed Reality in the Workspace
 
Empathic Computing: Developing for the Whole Metaverse
Empathic Computing: Developing for the Whole MetaverseEmpathic Computing: Developing for the Whole Metaverse
Empathic Computing: Developing for the Whole Metaverse
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity Introduction
 
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
【Unite Tokyo 2019】大量のオブジェクトを含む広いステージでも大丈夫、そうDOTSならね
 
Unreal Engine.pptx
Unreal Engine.pptxUnreal Engine.pptx
Unreal Engine.pptx
 
COMP 4010 Lecture7 3D User Interfaces for Virtual Reality
COMP 4010 Lecture7 3D User Interfaces for Virtual RealityCOMP 4010 Lecture7 3D User Interfaces for Virtual Reality
COMP 4010 Lecture7 3D User Interfaces for Virtual Reality
 
Introduction to Virtual Reality
Introduction to Virtual RealityIntroduction to Virtual Reality
Introduction to Virtual Reality
 
Talk to Me: Using Virtual Avatars to Improve Remote Collaboration
Talk to Me: Using Virtual Avatars to Improve Remote CollaborationTalk to Me: Using Virtual Avatars to Improve Remote Collaboration
Talk to Me: Using Virtual Avatars to Improve Remote Collaboration
 

Último

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Último (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

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