In simplified terms, Apple’s ARKit is a platform that enables developers to build AR apps and games for the iOS devices. Apple always had an eye on the AR market as it was relatively new with no or less competition. Also, many do prefer AR than VR, as VR needs dedicated hardware to run apps. In 2017, Apple broke silence on their AR Development at the Worldwide Developers Conference with the release of ARKit held on the June of 2017.
ARKit is basically a set of development tools that help the developers to create AR apps for iOS devices. Unlike Google, the ARKit is not venturing in the developmental phase. It is fully functional and available across iOS devices. iOS 11 has dramatically benefited from ARKit as there are some pretty amazing games available on iTunes that employ AR.
Also, ARKit compatibility comes to every supported device with the iOS 11 update. So there is no need for the user to download additional software bundles or setups.
All Apple devices having Apple’s A9 or above processors can run ARKit based apps. All the iPad pro devices are also capable of running ARKit based apps.
How does it work
A perfectly executed augmented reality experience is the culmination of both software and hardware efforts. This is the same way Apple wants to implement AR.
It is going to use the device’s hardware capabilities in tandem with the software to create a perfect AR experience. The main requirement for AR is that the software must have a sense of surrounding as well as the orientation of the phone with respect to the surroundings.
Apple uses a technology called Visual Inertial Odometry or OIS to have all the data in its surroundings. What this means is that the phones use its camera and sensors (like gyroscope, accelerometer, etc.) to have a clear idea on the relative motion and orientation of the phone with respect to the subject.
The software also monitors the light intensity as well as direction to add depth and realistic effects to the object.
ARKit is optimized to utilize horizontal and vertical surfaces to its advantages. So the software is constantly searching for a flat plane to implement the effects.
If you are using AR based apps on iOS, the best results can always be achieved if you point the camera towards a flat surface with ample lighting. The prime example of the ARKit usage to measure surfaces can be found on the iPhone X.
The 3D face detection of the iPhone X uses the ARKit coding to create a 3D image of your face to implement Face unlock feature.
How Does it Measure Distance With Just One Camera?
There are iPhones with a dual-cam setup that can quickly process the distance of objects from the camera. But ARKit doesn’t leave out single camera setups.
Apple truly embraced the integration between the hardware and the software to achieve the AR experience with a single camera setup.
The phones cannot measure distance with a single shot as the software relies on the slight movements of the phone. Even tilting the phone by two degrees will trigger the motion sensors to know how much the phone has moved.
The constant transmission and reception of data back and forth between the camera and motion sensors helps the phone to fill the void of just having one camera.
So Another Pokemon App?
Pokemon Go took the world by storm when it was released, as it enabled users to see pokemon in the real-world using their phone’s camera. But developers at Niantic managed to do this by overlaying a 2D image on top of the real 3D world that we live in. So, if you move around the pokemon, you won’t see the edges or corners, as every angle shows the same image.
But ARKit overlays a 3D image on top of the 3D world. It means that if you see an AR coffee cup placed on a table, you can actually move around it and see the various angles of the same cup. This is why ARkit is so much advanced than any other mobile AR platform currently available. Google is not far behind with their ARCore development kit, but it is still at version 1.0.
How Do The Users Benefit From It?
The users can now have apps that interact with the real world. One prime example is the TrueDepth Camera that comes with interactive filters. Also, the emoji developed by Apple uses the front-facing camera to project your facial expressions on to emojis.
The Machines is an AR game on iOS that lets different players play together in the same AR field. This lets you and your friends play the game in a living room where the living room itself is the battle arena
Apps like ModiFace 3D lets you try on virtual makeups to see how you look in different styles without you having to ever leave your house. It also lets you dye your hair with different colors and gives a realist image output.
IKEA has developed their AR app that lets you try out different types of furniture using AR to see how they look when you place them inside your home.
This is just a start! Imagine a scenario where you can try out clothes and apparels before purchasing them without going to the shops or malls. It is not the future anymore as it is now possible with AR and many companies have already begun their in-house AR app development.
Take a look at the Twitter handle @MadewithARKit to know more about how the developers are using this powerful platform from Apple to develop AR apps and games.
Limitations of ARKit
AR requires multiples sensors to be functional at the same time in addition to the camera. Also, the information must be processed quickly to create realistic images. Therefore it is a very processor intensive task.
Currently, the main drawback of AR is that it drains battery life quite quickly. It also causes your phone to heat up fast. ARKit can’t process data fast enough to cope with very fast motion. Apple has advised the developers to notify this in apps so that users won’t move their camera very fast.
The future of ARKit
ARKit has already become one of the developers favorite App development tool. Many established developers on the iTunes are tweaking their apps to bring support for AR. Certainly, the future of AR is very bright, and Apple is offering every bit of support for the developers to create amazing apps.
We will see ARKit evolve with future updates to optimize itself for better resource management and more realistic renderings!
Download the ARKit for your app development from here. You’ll need the App Developer ID to access and download the files.