Before WWDC19, myself and other Augmented Reality (AR) enthusiasts were anticipating many updates to SceneKit to come along with some shiny new ARKit features; however this was not the case.
Instead Apple decided to create a whole new framework to implement AR, and dubbed this new framework RealityKit. Here we have a whole new rendering engine, made from the ground up with AR not just in mind, but as the top priority. Although there may be some features missing; with this as v1.0 I have high hopes that this will become the standard for high-performance AR. Due to the name I also believe it could be intended for use with both Augmented and Virtual Reality, but I have yet to see any evidence for this.
I started looking into RealityKit right from the start, however there’s currently limited materials out there helping people to find their feet, both if someone who is new to AR or is coming from other AR Frameworks, such as SceneKit. This collection of articles aims to get you started with understanding the new format of creating AR content programmatically with RealityKit, with new articles coming out as I use the features.
To see what was changed with RealityKit during WWDC 2020, refer to this story:
- Component Entity System
- Touch Gestures, including EntityGestures
- ARCoaching, with ARCoachingOverlayView
- Subscribing to Events, such as Collisions
- Automating AR Sessions
- Multipeer Collaborative AR Sessions
- Video Materials
- Debug Component
- Useful Packages for Levelling-up RealityKit
- More Materials
- More articles coming soon
If you want to see code examples without support material; take a look at this repository below. In this repo I’m adding the new features together into a game similar to one that Apple showed off at WWDC19, for which they have yet to release the code for.
I've been using RealityKit a lot since it was released, and am writing Medium posts about different aspects of it as well as adding examples to this app.
Example code for Apple's new AR framework RealityKit, demonstrating the following things:
The Entity Component System
- Inheritance/Protocol Oriented
- AnchoringComponent (with Targets)
- AR Coaching
Add game feedback
- Score counter
- Audio Playback
Following the RealityKit examples from this keynote, as the code used has not yet been released:
Wishlist for RealityKit:
- Custom Mesh Generation
If you’ve enjoyed this article and want to see more in this RealityKit series follow me for updates or check out my Twitter.