Wednesday, June 7th, 2017 Posted by Jim Thacker

UE4, Unity add support for Apple’s new AR and VR tech


Both Epic Games and Unity Technologies have announced support for Apple’s new augmented reality and virtual reality technologies, due in its upcoming iOS 11 and macOS High Sierra operating systems.

The new technologies – ARKit and macOS VR – which were announced at WWDC 2017 earlier this week, are already supported in experimental builds of the Unreal Engine and Unity game engines.

Augmented reality: coming to iPhones and iPads via iOS 11’s ARKit
ARKit, Apple’s augmented reality framework, provides the base technology for iPhone and iPad developers to create AR experiences.

It uses what Apple terms Visual Inertial Odometry – a combination of data from the camera and inertial sensors – to track the motion of a mobile device relative to its surroundings.

According to Apple, the system requires no calibration, and can automatically identify flat planes like floors and tables, as well as tracking smaller objects.

Although playing catch-up with Tango, Google’s AR platform for Android devices, which was releaed in 2014, ARKit has the advantage of working out of the box.

Whereas Tango relies on smartphone manufacturers to integrate the technology – and at the minute, few do – ARKit will be available on every iPhone and iPad running iOS 11 when the new OS is rolled out this fall.



At WWDC, the technology was introduced via a live demo from Wingnut AR, Peter Jackson’s new augmented reality company, shown in the video above.

The presentation showed miniature spaceships – rendered in real time in Unreal Engine 4 – landing on a tabletop on the WWDC conference stage, then engaging in a pitched aerial battle.

Supported in UE4 source code now, and in Unity via an experimental plugin
ARKit support is already publicly available in UE4, although currently only in source code form: you can find the code on Epic Games’ GitHub repo, although you’ll need to be logged into your account to view it.

Compiled binaries will be available with the release of Unreal Engine 4.17, currently scheduled for August.

The tech is also supported in Unity, although via a plugin, rather than as part of the core engine.

Virtual reality finally due on desktop Macs with macOS High Sierra
Virtual reality support is also finally coming to desktop Macs this fall with the release of macOS High Sierra.

The OS is the first to enable Macs to display VR content without dual-booting into Windows – although you’ll have to wait until December for the first machine capable of displaying VR content: the new iMac Pro.

Other Macs will require an extra external GPU to display VR content, and those aren’t scheduled until 2018.

However, Apple already has a dev kit available, based around a Sonnet breakaway box containing an AMD Radeon RX 580 GPU – which, with 8GB of graphics RAM, has the necessary capacity for virtual reality work.

The only headset mentioned in the online documentation is the HTC Vive, but Valve has already released SteamVR for Mac in beta, so presumably the Oculus Rift will also be supported at some point.



Apple’s WWDC demo for macOS VR was pretty spectacular, with ILM chief creative officer John Knoll taking to the stage to introduce a VR version of the volcanic planet of Mustafar featured in Rogue One.

Unreal Engine 4 tools programmer Lauren Ridge navigated the world in real time, adding and positioning content including a TIE Fighter – and almost being decapitated by an animated version of Darth Vader.

Supported in an experimental build of Unity now, and due in Unreal Engine 4.18
At the minute, there isn’t a public build of Unreal Engine that features macOS VR support, but Epic Games has announced that it will feature in the binaries of Unreal Engine 4.18, due in early October.

Here, Unity Technologies has gone one better, releasing an experimental build of Unity that supports the SteamVR for Mac beta.


Read more about support for Apple’s ARKit and macOS VR in UE4 on Epic Games’ blog

Read more about support for ARKit and macOS VR in Unity on Unity Technologies’ blog