ARKIT
▸ Tracking
▸ Scene Understanding
▸ Light Estimation
Slide 8
Slide 8 text
SCENE UNDERSTANDING
▸ Plane detection
▸ Hit testing
Slide 9
Slide 9 text
ARKIT
▸ Tracking
▸ Scene Understanding
▸ Light Estimation
Slide 10
Slide 10 text
LIGHT ESTIMATION
▸ Estimate scene lighting information
▸ Render graphics that looks more
realistic
Video by Mark Dawson on Youtube
Slide 11
Slide 11 text
ARKIT
▸ Tracking
▸ Scene Understanding
▸ Light Estimation
Slide 12
Slide 12 text
SCENEKIT
▸ Rendering Engine
▸ 3D Content
▸ Provides basic AR view
Slide 13
Slide 13 text
GETTING STARTED
▸ Device Compatibility
▸ A9 processor or later
▸ iOS 11 and up
▸ Handle unsupported devices
and iOS versions
AR Optional
AR Required
Slide 14
Slide 14 text
GETTING STARTED
▸ Device permissions
Slide 15
Slide 15 text
GETTING STARTED
▸ Privacy and data handling
Slide 16
Slide 16 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 17
Slide 17 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 18
Slide 18 text
AR CONFIGURATION
Slide 19
Slide 19 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 20
Slide 20 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 21
Slide 21 text
RUN OPTIONS
Slide 22
Slide 22 text
AR SESSION MANAGEMENT
Slide 23
Slide 23 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 24
Slide 24 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 25
Slide 25 text
SESSION ERROR HANDLING
Slide 26
Slide 26 text
ARKIT BASICS
▸ AR session configuration
▸ AR session management
▸ Session error handling
Slide 27
Slide 27 text
SCENEKIT FOR AR
▸ Provides ARSCNView
▸ Owns AR session object
Slide 28
Slide 28 text
SCENEKIT FOR AR
▸ Hit testing functionality
Slide 29
Slide 29 text
SCENEKIT FOR AR
⚠ Private
Queue
Slide 30
Slide 30 text
BEST PRACTICES
AND TIPS
Slide 31
Slide 31 text
USER GUIDANCE
▸ Guide the user
▸ Show feature points
▸ Display detected plane
IKEA Place Portal
Slide 32
Slide 32 text
TRACKING
▸ ARWorldTrackingConfiguration
▸ ARAnchors fix position in real world ⚓
▸ Don’t use feature points to place content
▸ ARAnchors adjust for drift
CAPTURING THE ARWORLDMAP
▸ Dense feature points
▸ Multiple points of view
▸ No motion - static environment
▸ Use WorldMappingStatus
▸ Don’t display UI until ready
Slide 37
Slide 37 text
MAPPING QUALITY
Slide 38
Slide 38 text
TESTING IN THE REAL WORLD
▸ Low lighting
▸ Smooth surfaces
▸ Moving device fast while mapping
▸ Motion in environment
Slide 39
Slide 39 text
PERFORMANCE CONSIDERATIONS
▸ Initialization takes some time
▸ Battery drain
▸ Limit the number of anchors ⚓
▸ Delegate callbacks on background threads
▸ Mapping from a distance doesn’t work
▸ Occlusion - no depth sensing