Developed by Apple and Google, Apple ARKit and Google ARCore are two augmented reality mobile application development platforms. The first is for iOS, the second for Android devices. Discover the differences between these two platforms, ARKit vs. ARCore, as well as their strengths and weaknesses.
Augmented reality consists of superimposing virtual images on surfaces of the real world.
- For example: the well-known IKEA Places augmented reality application allows virtual furniture to be superimposed on images of the real world : in order to choose its furniture by previewing how it looks like in the user’s living room.
- Or, to show you another example : We recently created an AR app that helps users to place the new Mazda CX-30 SUV in their own parking spot.
As a general rule, augmented reality is appearing in front of our eyes through an electronic device. Furthermore, the virtual images are superimposed on reality by the camera of the tablet or smartphone.
ARKit vs. ARCore : What is Google ARCore?
In 2014, Google launched Tango, its first SDK (Software Development Kit) dedicated to augmented reality. If this platform did not meet the expected success, it has at least made it possible to lay the foundations for Google ARCore. This new SDK appeared in August 2017. It runs augmented reality on all smartphones with Android 7.0 Nougat or higher. Previously, Google Tango needed a special camera to project augmented reality.
ARCore relies on the detection of physical objects located close to the user in order to display augmented reality content on surfaces filmed by the camera of the smartphone or tablet. To achieve this, ARCore uses various sensors of the smartphone to detect horizontal surfaces, take into account the movements of the smartphone. And estimate the light entering the room so as to be able to illuminate virtual objects in a realistic manner, according to the environment.
In order to allow web developers to get started in augmented reality, Google has also launched a prototype web browser. It allows to develop applications in the same way as on mobile.
- Tracking: ARCore motion tracking is based on data from the IMU (Inertial Measurement Unit) sensor. The SDK determines the position and orientation of the device from points in the surrounding space.
- Understanding the environment: ARCore detects horizontal surfaces real time, as you move the device
- Brightness estimation: Brightness is measured using the smartphone’s ambient light sensor.
ARKit vs. ARCore : What is ARKit?
Just like Google ARCore, ARKit is an augmented reality application development kit for mobile. Presented in June 2017 as part of the annual WWDC conference, this kit is exclusively dedicated to iOS and allows you to create AR applications for iPhone and iPad on iOS 11 or higher.
According to Apple, this SDK will allow developers to create high-quality augmented reality experiences for iPhone and iPad by mixing digital objects and information with the user’s environment. Apple has some previous expertise in the field of AR. Thanks to the takeover of specialized startups like Metaio and Flyby.
- Tracking: Apple ARKit makes it possible to follow the position of the smartphone in the real world in real time. To do this, the SDK combines the Visual-Inertial Odometry (VIO) with data from the camera and the device’s motion sensor.
- Understanding of the environment: Thanks to ARKit, the iPhone and iPad can identify flat surfaces of the real world in real time for a realistic integration of virtual elements.
- Perception of brightness
ARKit vs. ARCore : Similarities and differences
- First and foremost, ARCore and ARKit are both compatible with Java / OpenGL, Unity and Unreal. Both SDKs offer motion tracking, environmental awareness and brightness estimation capabilities. In theory, both platforms can work with most existing smartphones. There is no need for sensors or cameras additional to those already integrated into current smartphones.
- ARCore’s basic operating principle is the same as ARKit, but because it has to be developed for a lot of different types of devices, and it is less advanced in terms of API functionality than ARKit.
- Disadvantages of both technology: Space perception is accurate in areas where the surface is very patterned or the contrast of objects is very different. Assuming that the walls of the room are white and that the space is minimal. Then you cannot update ARAnchor well because you cannot determine the reference points well. And this causes problems such as “drifting away” of the object we placed in augmented reality. Special attention should be paid to the application around homogeneous walls and areas, reflecting surfaces and areas with low light.
Operating systems and compatibility
- While ARCore runs on the newest versions smartphone and tablet devices using Android operating system (Android 7.0 Nougat or higher), ARKit allows you to create AR applications for iPhone and iPad on iOS 11 or higher, for devices that have an A9, A10 or A11 chip (iPhone 6s and 6s Plus; iPhone 7 and 7 Plus; iPhone SE; iPad Pro (9.7, 10.5 or 12.9) – both first-gen and 2nd-gen; iPad (2017); iPhone 8 and 8 Plus; iPhone X
- In the meantime, it is quite important to mention that in general ARkit is ahead of ArCore in performance, reliability… And many other things that make our clients usually choose iOS platform development for their digital projects.
We can only advise you to find an augmented reality agency that can help you with choosing the right technology for your future digital project. Swiss Tomato’s experts are happy to discuss them with you in Geneva or Zürich.
Check out our previous AR projects to gather some ideas, drop us a message and let’s have a tomato juice ASAP.