ARKit Sets the Foundations for Augmented Reality on Apple’s Platform

| by Sergio De Simone Follow 18 Followers on Jun 07, 2017. Estimated reading time: 2 minutes |

At WWDC 2017, Apple unveiled ARKit, a framework to build augmented reality (AR) apps for iOS. ARKit aims to allow for accurate and realistic immersion of virtual content on top of real-world scenes.

At its heart, ARKit provides support for basic key capabilities such as motion tracking, horizontal plane detection, and scale and ambient light estimation.

Motion tracking is powered by the CoreMotion framework and specialized co-processors coming with Apple mobile devices. It uses visual inertial odometry to estimate the 3D orientation and movement of the device based on the data coming from the camera. This, according to Apple, ensures a high degree of accuracy without requiring any additional calibration. Thanks to the ability of detecting horizontal planes, such as floors and tables, ARKit also makes it possible to place objects precisely within a physical scene and track their movement. Ambient light estimation is key to realistic shadowing and lightning of virtual objects.

The ARKit API supports two main configurations: ARSessionConfiguration, to track only a device’s orientation, and ARWorldTrackingSessionConfiguration, which also tracks a device’s position and detects real-world surfaces. Any detected surface is associated to an ARPlaneAnchor object and can be further described using ARHitTestResult, which provides its distance from the camera, position, and orientation. An ARPlaneAnchor is a special case of an ARAnchor, which can be added to an AR scene to place virtual objects within it. ARKit easily integrates with SceneKit or SpriteKit to handle 3D or 2D virtual content thanks to ARSCView and ARSKView. Alternatively, you can use Metal, updated to version 2 at WWDC, to take full control of scene rendering.

On the Mac the aforementioned Metal 2 also adds support for virtual reality (VR) rendering and external GPUs, and provides new APIs and optimizations to help developers embrace these emerging technologies within their apps, though customer availability of external GPU support isn't planned until Spring 2018.

This is just a quick overview of Apple ARKit. Make sure you read the introduction to AR and the official API reference if you need additional information.

While Apple did not disclose its future AR plans, Apple CEO Tim Cook stated in an interview to Bloomberg’s Emily Chang that ARKit provides the foundations for future Apple products.

ARKit is in beta and included in Xcode 9, which is already available to registered developers. Apple also provided a sample project showing the basic mechanics of placing objects into an AR scene.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread


Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you