SlideShare una empresa de Scribd logo
1 de 60
Taking the Purple Pill:   Lessons Learned Building a Platform   for Geo-Social Augmented Reality Games Terrance Cohen Vice President, Game Platforms Oriel Bergig Vice President, R&D
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill
Taking the Purple Pill
Obligatory “What is AR” Slides Ronald Azuma’s seminal work “A Survey of Augmented Reality” August 1997. http://www.cs.unc.edu/~azuma/ARpresence.pdf This is your first stop if you have any interest in AR.
“In Augmented Reality, the user can see the real world around him, with computer graphics superimposed or composited with the real world. Instead of replacing the real world, we supplement it. Ideally, it would seem to the user that the real and virtual objects coexisted.”
Lesson: AR is Different Rendering Pipeline Augmented Reality pipeline Presents the Virtual world to the Real world One-way process Also presents the Real world to the Virtual world Round-trip process
Rendering Pipeline
Augmented Reality Pipeline
Lesson: Bridging Worlds
Lesson: The Tech Demo Drop
Sketch AR [ Demo of Augmented Reality Hand Sketching Games, seconds 5 – 35 ]
Lesson: Bridging Worlds
Lesson: Bridging Tech Worlds Model Transform Lighting CameraTransform Viewport Transform 3D Virtual Scene Screen space (2D viewport)
Lesson: Bridging Tech Worlds Model transform Model Transform Lighting CameraTransform Viewport Transform Screen space (2D viewport) 3D Virtual Scene Real Scene (the world) Real Object transform HITLAB: AR Pancho project
Lesson: Bridging Tech Worlds Lighting Model Transform Lighting CameraTransform Viewport Transform Screen space (2D viewport) 3D Virtual Scene Real Scene (the world) Real Object transform Real lighting VTT: Photorealistic rendering for Augmented reality
Lesson: Bridging Tech Worlds Camera transform Model Transform Lighting CameraTransform Viewport Transform Screen space (2D viewport) 3D Virtual Scene Real Scene (the world) Real Object transform Real camera transform Real lighting
Lesson: Bridging Tech Worlds The live feed Model Transform Lighting CameraTransform Viewport Transform Screen space (2D viewport) 3D Virtual Scene Real Scene (the world) Real Object transform Real lighting Real camera transform
Lesson: Bridging Tech Worlds
Lesson: Bridging Tech Worlds Yawn! I did that back in ‘68
Lesson: Choosing a Platform 1968 1980 2007 GDC 2009
Lesson: Choosing a Platform 1968 1980 2007
Lesson: Choosing a Platform 1968 1980 2007 Kinect AR: Augmented Reality Magic Mirror
Lesson: Choosing a Platform 1968 I can’t see a thing! 1980 2007 GDC 2009
Lesson: Choosing a Platform Mobile Phones! 1968 1980 2007 GDC 2011 AR Enabled GDC 2009
Lesson: Sensor based AR Image source : ©ompactGames Image source: borntechie
Lesson: Sensor based AR Lucky shot Not so Lucky
Lesson: CV based AR
Lesson: Tangible Interaction Printed Markers Yeah, let’s add interaction! You again.. I did that back in ‘98
Lesson: Tangible Interaction Here comes the sketch with the steps to print the marker Printed Markers You are FIVE steps away from an AR tangible experience
Lesson: In-Place AR Sketch a  Marker LINK: Shape recognition and pose estimation for mobile augmented reality
Lesson: In-Place AR Sketch theContent!
Lesson: Bridging Worlds
Lesson: Geo-Social is Different
Paranormal Activity
Geo-Social – Under the Hood GIS Client OS Analytics Game Engine Server Hosting Broken Headlight Transactional Database Monetization
Calls Unwelcome at 4am Server Alerts
ETL: Leader   Boards Courtesy of Jeff Arenberg, Our Lead Platform Engineer
Data   Analysis: Spells Cast,   by Location   (USA only) Image by GeoIQ from FortiusOne
Lesson: Making the Witches’ Brew
Lesson: Embrace the Tech Soup
Tech Soup – Client Example Calling the Android SDK from Unity
Unity  C#
 C++ JNI
 Java Android SDK
Taking the Purple Pill Lessons Learned Building a Platform for Geo-Social Augmented Reality Games
Taking the Purple Pill ,[object Object]
 Bridging Worlds,[object Object]
 Choosing a Platform,[object Object]
 Computer Vision based AR,[object Object]
 In-Place Augmented Reality,[object Object]
 Paranormal Activity: Sanctuary
 Looking Under the Hood,[object Object]

Más contenido relacionado

La actualidad más candente

Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...
Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...
Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...Unity Technologies
 
AR Foundation: Merging AR Platforms
AR Foundation: Merging AR PlatformsAR Foundation: Merging AR Platforms
AR Foundation: Merging AR PlatformsMatteo Baraldi
 
Google Cardboard Virtual Reality
Google Cardboard Virtual RealityGoogle Cardboard Virtual Reality
Google Cardboard Virtual RealityVicky VikRanth
 
Royal Institution CS Materclass - Mobile/VR development
Royal Institution CS Materclass - Mobile/VR developmentRoyal Institution CS Materclass - Mobile/VR development
Royal Institution CS Materclass - Mobile/VR developmentDavid Bell
 
Computer generated imaginary
Computer generated imaginaryComputer generated imaginary
Computer generated imaginaryPratik Gondaliya
 
Computer generated images in movies
Computer generated images in moviesComputer generated images in movies
Computer generated images in moviesStephen Halley
 
Animation powerpoint
Animation powerpointAnimation powerpoint
Animation powerpointAbbeyfield
 
Cg film and animation presentation
Cg film and animation presentationCg film and animation presentation
Cg film and animation presentationMeng Eu
 
Chance's "Visual Effects" Lecture
Chance's "Visual Effects" LectureChance's "Visual Effects" Lecture
Chance's "Visual Effects" Lecturejpowers
 
AR Foundation framework: product roadmap – Unite Copenhagen 2019
AR Foundation framework: product roadmap – Unite Copenhagen 2019AR Foundation framework: product roadmap – Unite Copenhagen 2019
AR Foundation framework: product roadmap – Unite Copenhagen 2019Unity Technologies
 
Compositing, Composing Worlds
Compositing, Composing WorldsCompositing, Composing Worlds
Compositing, Composing WorldsNelson Zagalo
 
3 D Movie Making
3 D Movie Making3 D Movie Making
3 D Movie MakingVictor Tsai
 
Animatronics Presentation
Animatronics PresentationAnimatronics Presentation
Animatronics PresentationAswin Sarang
 

La actualidad más candente (19)

Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...
Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...
Persistent world-scale AR experiences with ARCore Cloud Anchors and AR Founda...
 
AR Foundation: Merging AR Platforms
AR Foundation: Merging AR PlatformsAR Foundation: Merging AR Platforms
AR Foundation: Merging AR Platforms
 
Google Cardboard Virtual Reality
Google Cardboard Virtual RealityGoogle Cardboard Virtual Reality
Google Cardboard Virtual Reality
 
Royal Institution CS Materclass - Mobile/VR development
Royal Institution CS Materclass - Mobile/VR developmentRoyal Institution CS Materclass - Mobile/VR development
Royal Institution CS Materclass - Mobile/VR development
 
Computer generated imaginary
Computer generated imaginaryComputer generated imaginary
Computer generated imaginary
 
Computer generated images in movies
Computer generated images in moviesComputer generated images in movies
Computer generated images in movies
 
Animation powerpoint
Animation powerpointAnimation powerpoint
Animation powerpoint
 
Cg film and animation presentation
Cg film and animation presentationCg film and animation presentation
Cg film and animation presentation
 
Abhilash VFX presentation
Abhilash VFX presentationAbhilash VFX presentation
Abhilash VFX presentation
 
Visual Effects (VFX)
Visual Effects (VFX)Visual Effects (VFX)
Visual Effects (VFX)
 
Chance's "Visual Effects" Lecture
Chance's "Visual Effects" LectureChance's "Visual Effects" Lecture
Chance's "Visual Effects" Lecture
 
CGI technology in movie
CGI technology in movieCGI technology in movie
CGI technology in movie
 
AR Foundation framework: product roadmap – Unite Copenhagen 2019
AR Foundation framework: product roadmap – Unite Copenhagen 2019AR Foundation framework: product roadmap – Unite Copenhagen 2019
AR Foundation framework: product roadmap – Unite Copenhagen 2019
 
Techology is the new creative
Techology is the new creativeTechology is the new creative
Techology is the new creative
 
Compositing, Composing Worlds
Compositing, Composing WorldsCompositing, Composing Worlds
Compositing, Composing Worlds
 
3 D Movie Making
3 D Movie Making3 D Movie Making
3 D Movie Making
 
VFX & Games: A SImulation Approach
VFX & Games: A SImulation ApproachVFX & Games: A SImulation Approach
VFX & Games: A SImulation Approach
 
Animatronics presentation
Animatronics presentationAnimatronics presentation
Animatronics presentation
 
Animatronics Presentation
Animatronics PresentationAnimatronics Presentation
Animatronics Presentation
 

Destacado

Social Studies: Pinterest & Instagram for Brands
Social Studies: Pinterest & Instagram for BrandsSocial Studies: Pinterest & Instagram for Brands
Social Studies: Pinterest & Instagram for BrandsPeriscope
 
Editorial Calendar Template via Hootsuite
Editorial Calendar Template via HootsuiteEditorial Calendar Template via Hootsuite
Editorial Calendar Template via HootsuiteFlutterbyBarb
 
Towards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor FeedbackTowards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor FeedbackTokyo University of Science
 

Destacado (6)

Social Studies: Pinterest & Instagram for Brands
Social Studies: Pinterest & Instagram for BrandsSocial Studies: Pinterest & Instagram for Brands
Social Studies: Pinterest & Instagram for Brands
 
Social Media Research
Social Media ResearchSocial Media Research
Social Media Research
 
Editorial Calendar Template via Hootsuite
Editorial Calendar Template via HootsuiteEditorial Calendar Template via Hootsuite
Editorial Calendar Template via Hootsuite
 
Augmented reality-What is it?
Augmented reality-What is it?Augmented reality-What is it?
Augmented reality-What is it?
 
Grafdom 10 years
Grafdom 10 yearsGrafdom 10 years
Grafdom 10 years
 
Towards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor FeedbackTowards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
 

Similar a Taking the purple pill

3. augmented reality uninpahu 2019-1
3. augmented reality uninpahu 2019-13. augmented reality uninpahu 2019-1
3. augmented reality uninpahu 2019-1Javier Daza
 
VIRTUAL REALITY & AUGMENTED REALITY
VIRTUAL REALITY & AUGMENTED REALITY VIRTUAL REALITY & AUGMENTED REALITY
VIRTUAL REALITY & AUGMENTED REALITY HarsshammJeetendra
 
Augmented Reality Workshop 2019
Augmented Reality Workshop 2019 Augmented Reality Workshop 2019
Augmented Reality Workshop 2019 Saurav Bajracharya
 
[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina
[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina
[Pandora 22] ...Deliberately Unsupervised Playground - Milan LicinaDataScienceConferenc1
 
Augmented Reality Workshop
Augmented Reality WorkshopAugmented Reality Workshop
Augmented Reality WorkshopFoteini Valeonti
 
Augmenting education
Augmenting educationAugmenting education
Augmenting educationJason Zagami
 
Mixed reality by Abhishek Mallick
Mixed reality by Abhishek MallickMixed reality by Abhishek Mallick
Mixed reality by Abhishek MallickAbhishek Mallick
 
Augmenting Education (ISQ)
Augmenting Education (ISQ)Augmenting Education (ISQ)
Augmenting Education (ISQ)Jason Zagami
 
Augmenting Education
Augmenting Education   Augmenting Education
Augmenting Education Jason Zagami
 
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICT
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICTAugmented reality : Possibilities and Challenges - An IEEE talk at DA-IICT
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICTParth Darji
 
Augmented reality
Augmented realityAugmented reality
Augmented realityVikas Kore
 
Magic Leap
Magic LeapMagic Leap
Magic LeapTeam2080
 
Augmented Reality-now and future
Augmented Reality-now and futureAugmented Reality-now and future
Augmented Reality-now and futureAnand .
 
augmented reality - Intorduction
augmented reality - Intorductionaugmented reality - Intorduction
augmented reality - IntorductionDeepak Chamarthi
 
ICT Presentation.pptx
ICT Presentation.pptxICT Presentation.pptx
ICT Presentation.pptxHamzaAshraf41
 
Augmented Reality: What is it and should I care?
Augmented Reality: What is it and should I care?Augmented Reality: What is it and should I care?
Augmented Reality: What is it and should I care?Kevin Cheng
 

Similar a Taking the purple pill (20)

3. augmented reality uninpahu 2019-1
3. augmented reality uninpahu 2019-13. augmented reality uninpahu 2019-1
3. augmented reality uninpahu 2019-1
 
VIRTUAL REALITY & AUGMENTED REALITY
VIRTUAL REALITY & AUGMENTED REALITY VIRTUAL REALITY & AUGMENTED REALITY
VIRTUAL REALITY & AUGMENTED REALITY
 
Augmented Reality Workshop 2019
Augmented Reality Workshop 2019 Augmented Reality Workshop 2019
Augmented Reality Workshop 2019
 
[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina
[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina
[Pandora 22] ...Deliberately Unsupervised Playground - Milan Licina
 
Augmented Reality Workshop
Augmented Reality WorkshopAugmented Reality Workshop
Augmented Reality Workshop
 
Augmenting education
Augmenting educationAugmenting education
Augmenting education
 
Mixed reality by Abhishek Mallick
Mixed reality by Abhishek MallickMixed reality by Abhishek Mallick
Mixed reality by Abhishek Mallick
 
Augmenting Education (ISQ)
Augmenting Education (ISQ)Augmenting Education (ISQ)
Augmenting Education (ISQ)
 
Augmenting Education
Augmenting Education   Augmenting Education
Augmenting Education
 
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICT
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICTAugmented reality : Possibilities and Challenges - An IEEE talk at DA-IICT
Augmented reality : Possibilities and Challenges - An IEEE talk at DA-IICT
 
Augmented Reality
Augmented RealityAugmented Reality
Augmented Reality
 
Augmented reality
Augmented realityAugmented reality
Augmented reality
 
Magic Leap
Magic LeapMagic Leap
Magic Leap
 
Magic Leap
Magic LeapMagic Leap
Magic Leap
 
Augmented reality
Augmented realityAugmented reality
Augmented reality
 
Augmented Reality-now and future
Augmented Reality-now and futureAugmented Reality-now and future
Augmented Reality-now and future
 
augmented reality - Intorduction
augmented reality - Intorductionaugmented reality - Intorduction
augmented reality - Intorduction
 
ICT Presentation.pptx
ICT Presentation.pptxICT Presentation.pptx
ICT Presentation.pptx
 
Augmented reality
Augmented realityAugmented reality
Augmented reality
 
Augmented Reality: What is it and should I care?
Augmented Reality: What is it and should I care?Augmented Reality: What is it and should I care?
Augmented Reality: What is it and should I care?
 

Último

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
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
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Último (20)

Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
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
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
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!
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

Taking the purple pill

Notas del editor

  1. Welcome everyone to GDC 2011, and thank you for joining us today.I’m Terrance Cohen, Vice President of Game Platforms for Ogmento, and with me today is Oriel Bergig, Vice President of Research & Development and co-founder of Ogmento.I come from the world of mass-market console game development. Most recently I was the Lead Systems Engineer at Insomniac Games focusing on the Resistance franchise.Less than ½ year ago, I joined Ogmento to work on geo-social Augmented Reality games.I hope that after this hour you’ll understand why.<>This time last year, most of us had smartphones. But today, anyone is likely to be walking around with a GHz processor in their pocket, a 3” screen or better, and best of all a back-facing camera!This is a perfect storm for augmented reality!
  2. Whatare Geo-Social Augmented Reality Games?
  3. When I say Geo, you should think of FourSquare: Locations in the game are 1-to-1 with locations in the real world, and being there in the game means being there in the real world. The game is played in the real world.
  4. So what are Social games?< you don’t know? GET OUT! 8-) >Alright, you probably know what social games are. But they’re hard to define, and usually defined by example.So think of FarmVille, and we’ll define social games as games that integrate with a social network and use that network to enhance gameplay between players.
  5. And when I say Augmented Reality or AR games, think of Eye of Judgement or Eye Pet where virtual objects and characters are registered and overlaid with features of the real world, and players interact with them.
  6. This is a frame from Eye Pet, where players interact with virtual pets.You’ve seen those before: Geographically-based games, Social games, and AR games. But you probably haven’t seen them combined before.AR games invite the player to interact with virtual objects in the real world.Geo-social games invite the player to play the game at locations in the real world.So you remember why I’m here – the time is right, now that we have such capable devices.And for the first time in history, combining these features in a game is possible – it can run on the phone in your pocket. The hardware barrier is finally gone.
  7. What do I mean when I talk about, “Taking the Purple Pill?”Well, if the Red Pill represents Reality, and the Blue Pill represents Virtual Reality,
  8. …Then the Purple Pill represents Augmented Reality – a blending of Real and Virtual Reality.
  9. We are game developers, and AR is central to what we’ll be discussing, so let’s be a little more rigorous about our definition.AND I would be remiss if I didn’t have the obligatory “What is AR” slides… but there are only 2 of them 8-) !AR is effectively defined by Ronald Azuma’s seminal work, “A Survey of Augmented Reality”.This is your first stop if you have any interest in AR, and hopefully after this hour, you will!
  10. According to Azuma’s definition. <read>
  11. Now, we’re going to jump right into some of the lessons we’ve learned building a platform and games using geo, social, and augmented reality techniques.One big lesson that I learned is that Augmented Reality is different. It’s a “game changer” in many ways. And I think it takes some time to really get the subtle and the not-so-subtle ways that AR changes the way games are designed, developed, and maintained, to say nothing about how they’re played.So to think about how AR is different, I want to compare the Rendering Pipeline with the AR Pipeline.The purpose or job of the Rendering Pipeline is to present the Virtual world to the Real world.If you think of rendering as a part of the AR pipeline - that is, the tail-end of the pipeline - what AR adds to the beginning is: presenting the real world to the virtual world.At the end of the day, the Rendering Pipeline is a one-way process. Augmented Reality represents the full round-trip process.
  12. Think of the rendering pipeline like this:<sweep hand to the right>With the standard 3D rendering pipeline, you have the virtual world rendered on the screen, and presented to the player.[End of Slide][Back story: the player & the scene => captured by the camera => features extracted, pose estimated, objects registered => virtual and real world rendered on the screen, and presented to the player. ]
  13. Now, here’s the round-trip pipeline represented by augmented reality.<pointing at features>The player is being seen by the camera, the AR algorithms register the player in the scene, and composite the player with objects in the virtual world. Then the blended real and virtual world is rendered on the screen, and presented back to the player.[End of Slide][Back story: the player & the scene => captured by the camera => features extracted, pose estimated, objects registered => virtual and real world rendered on the screen, and presented to the player. ]
  14. Alright. Now another lesson I learned in the process of developing geo-social AR games.We are not just bridging the real and virtual world in the context of a simulation.We are also bridging two sides of the real engineering world. These two sides are the graphics engineers, and on the other side of the room, the augmented reality scientists.And the two of them don’t talk.This is a story told to me by our Chief Scientist, he was at a conference, and the rendering engineers were on one side of the room, the AR scientists on the other side of the room, and they literally knew nothing about the algorithms being used by the people on the other side of the room.
  15. So here’s an example of the disconnect between the two sides of the room.I call it, “The Tech Demo Drop,” and here’s how it goes:The Chief Scientist appears out of thin air. He says, “Hey, take a look at this demo that I made last night.”We say, “Oh, wow! That’s fantastic! Thank you! <> So… how do we make a game out of this …”We look around, and the Chief Scientist has vanished.
  16. And here’s an example of the tech demo drop…http://www.youtube.com/watch?v=dL4j3FoBykg
  17. At Ogmento we are actually Bridging Worlds.At this point, I’d like to hand-over the mic to the Vice President of R&D and co-founder of Ogmento, Oriel Bergig!
  18. Lets start with the rendering pipeline we all know and then see how it is changed when AR comes into play.We start with a 3D virtual scene. 3D models will pass a model transformation then lighting is applied and then a camera transformation.Now lets see how Augmented Reality is going to affect this pipeline..
  19. Now we have a real scene being imaged by a camera.In many cases in Augmented Reality we want the virtual object to be registered to something in the world.Let see a short movie of a project done at the HitLabNZ to demonstrate that.In the AR rendering pipeline objects are transforming not only according to their animation and etc. but also according to the transformation of an object in the real world.
  20. You can do more if you can calculate the position of the real light sources from the camera image.In that case you no longer need to simulate where the light sources would be in a real scene. It is a real scene and the lights are where the lights are.
  21. The next step is the camera transform. If your camera is moving that’s where its going to affect the rendering pipeline.A mobile phone is a good example of a moving camera. In the AR rendering pipeline the camera transform is done according to the real camera transform.
  22. Now all we are left to do is to inject the live feed as part of the pipeline to create the illusion object are registered to the real world.On good way of doing it is using a texture on a plane used as the camera view backgroundSo every frame, 30 times a second we replace the texture of that plane with the image that comes from the camera.One of the advantages of this approach is you can now apply shaders and other effects to both the camera feed and the virtual objects. This is important because it results in a similar appearance to both which increase the illusion the real and the virtual co-exist.
  23. THIS IS A DEMOLet us see a live demo of a 3D AR scene and of the model transformation we discussed.CAMERA OFFStep 1: This is a Unity3D environmentStep 2: This is the light source, camera, object and a planeCAMERA ONStep 3: This is me injected onto the plain as a texture Step 4: I want the object to rotate according to the rotation of a real object so they become registeredANCHORStep 5: Look at the camera preview window – they seem to be on on top of the otherStep 6: Im about to rotate the card I have in my hand and the virtual objet will rotate such that it appears to be registered ROTATE LIGHT SOURCEIf I will rotate the light source it will create a similar effect on the live feed and the object increasing the suspension of disbeliefThis demo is also a very sophisticated way of bridging the worlds. This is bridging AR with game development environment and you can see in real time the final result the AR view
  24. Ivan Southerland  known for Sketch pad  Created the Sword of DamoclesIn 1968 he create the first computer program to demonstrate VR and ARGot that? AR and VR started at the same time – bridging the two is actually closing a circle
  25. WHERE AR WORKS WELL ?AirplanesPlane rotation and location are accurately knownTarget location is accurately knownAR Locking on a target is possible
  26. In 2007 Sony came out with the eye of judgment, the first AR game.
  27. Another type of AR can be done with Kinect – Augmented Reality for this platform is still under development.But lets take a second look at kincent / Wii / Move. It is all about Moving and InteractionBUT What if you could really move ?
  28. Of course – a mini Head mounted display is the answer. We’ve seen it in GDC two years ago and…. We are still waiting.And it wasn’t see-through. The first transparent one came a month ago at CES but its still far from a product for playing games.Plus, even it was ready our target audience don’t have it.So for me there is only one obvious answer!
  29. My platform of choice is in your pocket. It is a perfect window to the world. Its …. Your mobile.So that's the platform of choice for Augmented Reality games in 2011 - mobile phones.
  30. The first thing that comes in mind when thinking AR games on mobile phones is the camera transform.Our smart phones comes with accelerometer, gyroscope, GPS, and compass so they have all the sensors needed to calculate the camera position and rotation much like they did it with airplanes. Well almost – because the hardware on the phone is not as good as the one on the airplane and so you need a lot of work to get these reading filtered.If we don’t filter the reading the objects will be floating around. As we filter more the reading - the objects will become more steady but at the same time when we move around they will lag behind -- breaking the illusion.There is no perfect solution for that. One good way is to use an extended kalman filter.
  31. So lets assume we solved all the issues with phone sensors. It is still limited because you can not tell what is in the image with the sensors alone.On the red screen shot an object is floating in the air not registered to anything specific.You can work around those issues in gameplay. In our game in daemon hunting mode, the objects are moving around quickly and your goal is to track them. This is good to overcome noisy sensors and distract the player from noticing the object are loosely registered to the real world. But that is limited in terms of game experience you can do.So what if you want to do more. You want to really see what's in the image so you can register objects.
  32. Thats where you need to do image analysis and computer vision at every frame.OK – so we want CV. What can we do with it?
  33. Tangible interaction!Remember the ARPancho?This project is a good example of tangible interaction because the virtual character reacts to the card movements. Until not too long ago the only available technology that can help you do that required printing.
  34. Printing means youneed to print a specific shape or image to be able to play!Meaning - you need to go through 5 steps so you can start the game.Publishing a mobile game on the appStore looses its purpose when you need to first install the game, then go to a website, download and open a pdf, print it the PDF and finally play! And don’t forget to to carry the print with you so you can be mobile. We are talking mobile games after all.
  35. So what if you could create your markers anywhere by just sketching them. What if you can support almost any sketched shape or scribble.The sky is the limit to the different possible arts. In our game the theme is around the 5 elements of a pentagram, each element has its unique magic.So we are asking the players to sketch a pentagram and a 3D pentagram will appear leaping off the page with the sketch.I’ve included a link to an award winning paper describing sketch markers.So we can sketch any scribble we want and it will become the marker or the hook to the real world. It will become your tangible interface to the virtual world!Is that all?What if we could do more with your scribbles…
  36. Remember the tech demo drop with the garden leaping of the sketched page? That was the first attempt of that chief scientist.But in his head it was a simple example of a bigger concept –In-Place AR where what you scribble becomes part of the game. It can be a a blue circle that becomes a lake, a real leaf that becomes grass or ... a simple curve that becomes a race trackSo if you did a good job in bridging the mind set the next time the chief scientist comes back to the room he demonstrates something that will blow you away and is actually a game demo.I want to demonstrate to you what he demonstrated to all of us:DEMO Step 1 – I am sketching a simple scribble Step 2 – I want this to be my race track Step 3 – I want a road to loft from this sketchStep 4 – Lets playStep 5 – Lets play against the computerStep 6 – I can transition from AR mode to AR and VR or to fully VR 3D mode.This un-named game is demonstrated here for the first time.It is revealing a new genre of games. Sketch interaction games.AFTER DEMOThank you very much - This is also the opportunity to thank Nate hagbi, our chief scientist for inventing all this great tech. I will now pass the mic back to Terrance so he can tell you more about the purple pill.
  37. Isn’t that great? Sketch racing is an example of some very exciting sketch AR technology. It shows the potential of what AR games can be.But there’s more to it. We’re doing geo-social augmented reality games.
  38. <>The next lesson that I want to discuss with you is this.Geo-Social games are different than other games.Just to review for a moment. Earlier we talked about Geo-Social games.We said that in geographically-based games like FourSquare, the game is played in the real world.And we said that social games like FarmVille integrate with a social network and use that network to enhance gameplay between players.I want to highlight here that regular games bring … the game … to the player. Geo-social games bring the player … to the game.Similar to the way AR games invite the player to interact with virtual objects in the real world,Geo-social games invite the player to experience the game in the real world.Imagine moving around a city in an FPS, except that at the same time, you’re actually moving around the city in the real world.
  39. Now here’s a game that imagines demonic forces forever trying to break through into our world.In Paranormal Activity: Sanctuary you investigate paranormal phenomena to identify hot spots of demonic activity called hell holes,then use your arcane powers to exorcise the evil spirits and create sanctuaries that protect against further attacks.But beware, if you let down your guard down you risk becoming possessed by dark spirits and turning against your former allies.Paranormal Activity: Sanctuary is Ogmento’s latest title for the iPhone. It is available for free from the App Store now.
  40. And now I will use Paranormal Activity: Sanctuary to demonstrate many of the themes we’ve been discussing here. We’ll focus on the geo-social and AR elements of the game, including a demonstration of a Sketch AR component that you can get on your device immediately… if you have an iPhone. (Don’t worry, we’re bringing our stuff to Android very soon, I promise!)Demo: Paranormal Activity: Sanctuary<looking at heatmap>As you can see, we're looking at a map. On the map, in the game, we're in Room 303 of the South Hall of the Moscone Center, because in the real world, that's where we are.This is the location-based part of the game - the geo. This game is played in the real world.You can also see that there are zones of depravity called hellholes - indicated in red.And there are zones of sanity called sanctuaries - indicated in blue.<selecting a hellhole>Each hellhole has a Predator - the actual player who has contributed the most depravity to the zone.And each sanctuary has a Guardian - the actual player who has contributed the most sanity to the zone.This is part of the social aspect of the game. You are battling real players for control of locations in the real world.There are also missions on the map, identified by pins. These missions can be based on what items you have, or they can be location-based. For example, you might have missions related to ghosts or spirits near a cemetery, or sacred text related missions near a library.Now we've created missions specifically for GDC. Some of them are here, and others are spread around San Francisco. After the presentation, please pick-up a map at the front of the room - it will guide you to the most valuable missions around the area.This is what geo-social games are all about.<selecting the Terror mission>One of our missions is The Terror in Room 303, again, because that's where we are!We'll go on that mission…It says that The geo-social energy at the conference is exhilarating, but you need something to bring it into focus…So we're going to do it…<wait for it>We've reinforced our sanctuary/hellhole, and we've gained<select it>The Purple PillThe Purple Pill is not a drug, but a way of looking at the world. The real world augmented by the virtual, the virtual world enhanced by the real.Alright, now we're going to do some investigation. We're looking for demonic activity in our immediate location.<>And there we go, we photograph the demonic activity which gives us experience.This is the type of AR browser that can be seen in other AR games.But next, we're going to cast a spell, and boost it with sketch AR.To do that, we draw a pentagram on a piece of paper. Then we look at it with our device, and allow it to boost the power of our spell.
  41. Now we’re going to go “under the hood” of geo-social games, and take a look at some of the big moving parts.Games played at locations in the real-world means using a geo-spatial database. In our case, we use PostGIS, an extension to PostgreSQLPersistent world & missions means using a transactional database back-end that can handle some heavy-lifting. Paranormal Activity: Sanctuary uses Amazon Web Services, including Electric Cloud 2 and RDS.Of course, the game uses a “freemium” model, where players can make in-game purchases, which fund the development and maintenance. For that to work, we need a way of accepting payments. Apple’s App Store makes that straightforward. It’s currently a little trickier on Android, but promises to get easier soon as Google begins to support similar mechanisms.But to figure out what people like to buy, what makes them want to buy, and to get them to do more of that, there’s also a whole layer of analytics and reporting.Sometimes I feel like I’m back building business applications… but then I remember that these database records don’t represent telemarketing calls or insurance policies (true story), but hellholes and sanctuaries, missions completed, and Spells cast. Which, let me tell you, is much cooler! But these are a lot of moving parts that need to work well together.
  42. … and sometimes they don’t! That’s when someone gets a call like one of these:<play>These are not things you want to be woken-up to hear. So that’s when you contract with someone on the other side of the world, who is already awake to hear it, and fix it.
  43. So, the heart of some of the more complex data manipulations and analysis is a set of ETL processes – which stands for Extract, Transform, and Load. The ETL processes Extract data from your application databases and other source systems like GIS, Transform that data, and Load it into tables in your data warehouse and back into your application databases.Here’s an example of our ETL processes. This is the ETL script for managing leaderboards, a feature coming soon to Paranormal Activity.You can see how events come into the script with location data. The geographical coordinates are checked against a geolocation cache, to see if we already have leaderboard data for that city/state/country. If we do, then the new value can just be added to that leaderboard. However, if the location isn’t in our geolocation cache, then we need to do a reverse geolocation lookup on OpenStreetMap through MapQuest to figure out where the player is. Once that’s done, we can populate the leaderboardand the geolocation cache with the new location.
  44. Now we go from data transformation to data analysis and visualization.So who doesn’t like a pretty picture?Here’s a map of the locations of spell casts in Paranormal Activity after a week or so of activity.Now, when I first looked at this, I was wondering – why is there so much activity to the east, and on the west coast, but very little inbetween.<anyone>
  45. Yup, that’s why.<>
  46. Now we’ve talked about most of the ingredients in geo-social AR gamesWe’ve talked about the client components: Sensors and GPS for location and orientation.The camera as a window to the real world.Maps to display the current location and the “play field”.AR to register virtual objects in the real world.And all of the database and analytics to go with it.<hands scraping deviously>We have all of the necessary the ingredients for our Witches’ Brew!
  47. So we end up using a lot of off-the-shelf and open-source software, particularly on the server side.And that can sometimes result in quite a tech soup.Don’t fear it.This is not about everyone “doing it my way”, rather interop is the name of the game.They’re designed to work together, or are sometimes even about working together.For those of you who started in the mobile space this may be “old-hat” to you. You might be saying, “What’s he talking about?”But for those of us who have made the transition from consoles, it’s a brave new world.For us, it was more like, “Hello, welcome to Game Studio, Inc. Here’s your compiler, and here’s the platform SDK. The engine is written in C++, which is what you’ll be using for the next 12 years of your life. Good luck!” From what I’ve seen so far, that’s not mobile development, and certainly not geo-social AR game development.Tag cloud generated at http://www.tagxedo.com/Tag cloud words:Java Java Java Java Java Java JavaCSharpCppC# C# C# C# C# C# C# C#C++ C++RooRooDjangoDjangoMySQLMySQLMySQLMySQLJNI JNI JNIUnity Unity UnityAntEclipseObjective-C Objective-C Objective-CMono Mono Mono Mono Mono MonoXcodeAmazon EC2 Amazon EC2 Amazon EC2 Amazon EC2PostgreSQLPostGISPostGISPostGISAndroid Android Android Android AndroidGPSGoogle Google Google Google GoogleApple Apple Apple AppleiOSiOSiOSiOSFlash Flash Flash FlashAdobeXAMLOpenGL OpenGL OpenGLOpenCVTouchiPhoneiPhoneHTCMotorola MotorolaVerizon Verizon Verizon VerizonT-Mobile T-MobileAT&T AT&T AT&TNVIDIATegra2AcerGDC GDC GDC GDC GDCSprintSunOracleSubversionApacheSpringSourceGrailsDroolsMavenTomcat TomcatTerracottaPentahoPentahoPentahoPentahoGeoIQGeoIQFortiusOneFortiusOneFortiusOne
  48. So here’s a little example of embracing the tech soup.We’ll be looking at an example of calling into the Android SDK from Unity, which most of you probably know is a very popular game engine for mobile development.In this case, we’ll be turning the device’s camera on and off from Unity, something that Unity doesn’t inherently support.
  49. So first you write a Unity script in C# which imports a native library that you also wrote, and exposes some set of functions from the native library to your Unity script.In this case, we have a script which – when it is called to Start() – turns the device’s camera on by calling setCameraOn(true), a function implemented in a native library.
  50. Now, the native library is implemented in C++, using JNI which is the Java Native Interface, and lets you manipulate Java objects from native code. In this case, we’ll be manipulating objects that are instances of classes that we derived from Android SDK base classes. So we’ll find the Android Activity class, get its currentActivity static reference, locate that object which is our Activity instance, find the PlaytimeControls member of the Activity, find the setCameraOn() method of the PlaytimeControls object, and call that method.
  51. Now PlaytimeControls is a Java class that uses the Android SDK to keep track of the currentActivity, to manipulate a CameraPreview instance which is owned by the Activity, and to add and remove the CameraPreview from the Activity’s RelativeLayout. If you haven’t seen it before, it looks a little crazy. The 2nd time, it’s pretty straightforward, and the 3rd time, you’re writing it in your sleep.
  52. So it’s almost time for us to finish here, and give you a chance to ask questions. Before we do, I want to review a little.Remember that we talked about Geo-Social Augmented Reality, and how AR as the Purple Pill blends the real and virtual worlds.
  53. We talked about how AR is Different, and how we’re Bridging Worlds between engineering disciplines.
  54. And we talked about bridging the worlds between game design and software engineering.We talked about selecting the right platform for AR games.
  55. We saw how we can do sensor-based AR on a mobile platform, and why we need the computer vision.
  56. We talked about tangible interaction, and we demonstrated in-place augmented reality.
  57. We talked about how Geo-Social is different and we saw a demo of how these elements came together in Paranormal Activity: Sanctuary.And then we looked under the hood of geo-social games.
  58. Then we talked about data analysis for geo-social gaming, and how that is just one ingredient in the Witches’ Brew.And finally, we talked about how we embraced the tech soup and wrapped-up with an example of calling the Android SDK from Unity.
  59. I sincerely hope you’ve enjoyed our presentation, and thank you for Taking the Purple Pill.This is Oriel Bergig, and I’m Terrance Cohen. You can follow us on Twitter.If you enjoyed your time here, please remember to fill-out the evaluation forms and hand them to the awesome volunteers in the back. If you didn’t enjoy it, there are some black receptacles on the floor in the back, so you can just go ahead and slip them right in there 8-). No, I’m only joking. Please return the evaluation forms to the volunteers in the back.We’re going to take questions now - We’re supposed to ask you to Preface your questions or remarks with identification such as “This is Cindy from Indianapolis…”And we’re supposed to always repeat the question or summarize a comment for the benefit of participants who may not have heard it.