Overview: Top AR development tools in 2019
VR / AR2 August 2019
If you are ready to go with AR application development, don’t forget to choose an appropriate AR development tool. It must provide your developers with the possibility to implement all the app’s requirements. As we have already covered many Augmented Reality development topics in our blog, today we want to provide you with an AR development tools overview.
And if you missed our previous articles, we recommend to check the useful ones connected to this post:
AR tools overview
There are 2 main types of augmented reality app development:
- Location-based. Location-based AR apps use different features of mobile devices that can monitor the position of a device like GPS, cellular network, etc. Such apps usually provide location-based data specific to each device. Some examples of this technology usage: providing help with directions in a city, locating a vehicle in a parking lot, etc.
- Marker-based. Marker-based AR apps are focused on using the device software to identify patterns (like QR code or plane surface) in the image obtained from the device camera. Then a 3D, 2D or animated overlay is cast on the device screen over the real-world image procured from the camera.
Different solutions for both types exist on the market.
Let’s have a brief overview of the major AR development tools:
This seems to be the most popular AR development SDK. It’s available for free and offers paid plans as well (99$/mo for cloud and 499$/one time per app). With the free version, you get limited functionality and watermarks. The main features provided by Vuforia:
- Text recognition. This app has in-built 100 000-word English vocabulary and the possibility to add custom ones.
- Possibility to play videos on the specifications provided.
- Usage of VuMarks. These special barcodes can do both encode data and act as markers.
- Possibility to work with the different types of visual objects (a box, cylinder, plane).
- Vuforia Object Scanner allows to scan and create object targets.
- Possibility to use Virtual buttons that can turn any surface into a touchscreen.
- Recognition Powered by AI allows tracking a physical object at any angle, complete 360, without a guided view.
Its API allows developing in C++, Java, and Objective-C++. Also, it provides APIs for ARCore and ARKit.
However, you can come across the following cons:
- Limitations related to the number of VuMarks and the amount of Cloud recognition.
- You need to pay to get all the features of this SDK.
Another good tool for Augmented Reality development. Main features are:
- Rendering 3D images with the help of SLAM technology.
- Efficient working with geo-referenced information.
- Adding and managing virtual objects without any coding.
- Image recognition based on cloud storage. You can host up to 100,000 target images, which enables fast, reliable and scalable cloud-based AR experiences.
- Access to Wikitude Studio tool. This is an AR editor with no programming required as you do not edit the code directly. It allows to create, manage, test and publish augmented reality content. It’s designed with an intuitive drag-and-drop interface for anyone to use.
It seems like this tool provides developers with lots of useful features, but still, it doesn’t support the Unity Editor.
Wikitude has a free trial, which includes all the features but with watermarks. Paid plans start from 1990€. Also, there are one-time fee plans and annual subscriptions.
This is the Apple framework for AR. Its main value is the wide reach and scalability. And it’s totally free. Here are some of its features:
- Providing People Occlusion effect. AR content realistically passes behind and in front of people in the real world. This makes AR experience more immersive and also enables green screen-style effects in almost any environment.
- Detecting the position, structure, and expression of the user’s face. So it makes easy to apply effects in real-time. ARKit Face Tracking tracks up to three faces at once, using the TrueDepth camera on recent iPhone and iPad versions.
- Fusing camera sensor data with Core Motion data. So all the movements are tracked without any additional settings.
- Sharing the AR experience with other users which allows creating multiplayer AR games.
- Using Front and Back cameras simultaneously. Using face and world tracking on the front and back cameras at the same time, allows users to interact with AR content in the back camera view using just their face.
- Detecting up to 100 images at a time.
- Lighting estimation for making virtual objects look more realistic.
- Detecting horizontal planes.
This SDK helps to develop apps that would recognize spaces and 3D objects, as well as place virtual objects on surfaces.
The main cons of ARKit are:
- This is experimental software, which changes all the time.
- Development for Apple iPhone X is required to take full advantage of the TrueDepth Camera.
- It works only with macOS and can’t be compiled on Windows for Mac.
After the launch of ARKit, Google presented ARCore. It became the biggest competitor for Apple’s AR development tool. They have similar features, usability and provided for free as well. Key features are:
- Determining the position and orientation of the device with the help of the camera and spot the feature points in the room.
- Detecting horizontal surfaces. This allows placing virtual objects on tables or on the floor.
- Match the lighting of the surrounding space. This helps to light virtual objects and make them look natural and realistic in the environment.
ARCore integrates with Unity, Java, Android NDK, Unreal Engine, and many others. This makes ARCore be the complete toolkit for developing multiple platforms using a single code base.
ARToolKit is a free and open-source tracking library for Augmented Reality. It implements the following features:
- Single-camera or stereo-camera camera position/orientation tracking.
- Tracking of simple black squares.
- Tracking of planar images.
- Camera calibration and optical stereo calibration.
- Plugins for Unity and OpenSceneGraph.
- Optical head-mounted display support.
- Free and open-source software.
- Fast enough for real-time AR applications.
However, the variety of functions makes it difficult to integrate the library. Also, it requires lots of time to explore all options and configure its settings.
Here is an example of a project built with ARToolKit: The MagicBook.
This Augmented Reality development tool comes with two separate SDKs:
- The first one is a 2D toolkit to track images.
- The second one is a 3D toolkit, which is used for scanning and recognizing the surrounding environment.
The latter one if the most interesting as an AR development SDK. It’s main features are:
- Tracking the surroundings and mapping the environment.
- Scanning QR codes and barcodes.
- Tracking up to 3 items at the same time.
- Creating a more realistic experience due to the physics engine effect.
- Screening virtual objects by a real one fully or partially (this is called “occlusion effect”).
There is one more tool for AR development with Unity we would like to mention. ARFoundation offers core features of ARCore and ARKit. It was developed by Unity as a multi-platform API and utilities. This means that developers will be able to quickly create an AR application supported by both Android and iOS devices. AR Foundation will evolve to provide access to new platform features and helpful utilities while maintaining backward compatibility.
Before choosing the best AR development tool for your business, you need to identify the problem your app is going to solve. How exactly you can make your customers’ lives easier? When you know the correct answer, you will be able to write a list of features of your desired app. This will help to select an AR development tool which can cover the requested feature list.
And, once you start the app development, brace yourselves to witness the growth of your business with the help of AR technology.