Augmented reality is rapidly becoming more popular. According to Statista research, projects for 2023 place AR technology value at more than 18 billion US dollars, while mobile AR user growth should hit 2.4 billion that same year.
Meanwhile, AR is useful in many different fields. For instance, it has entertainment applications, and can also be used for retail, in the medical field, and for manufacturing, among others.
If you want to embrace this new technology in 2020, one way to do so is to create an augmented reality mobile application. To do so, you’ll need the right AR SDK.
Types of Augmented Reality Applications
Augmented reality mobile app development involves two distinct types. The first thing you must do is decide which one makes the most sense for your company.
An augmented reality marker-based apps use image recognition technology with device cameras to detect markers or patterns. Once that happens, the app overlays digital information on the marker. AR object-orientation depends on marker positioning.
Location-based AR apps use GPS and other position detectors, such as digital compasses or accelerometers. They can detect your location and create augmented reality images with which you can interact. You can see directions through location-based AR mobile apps.
Projection Augmented Reality
Projection-based AR apps are using advanced projection technology that can be used to simplify the complex manual tasks that might be part of the manufacturing process.
Superimposition-Based Augmented Reality
This type of AR either fully or partially replaces an object’s original view with a specially augmented view of it. You can see an item in real life, but when you apply the superimposition AR, you’ll see that same object in its place, but dramatically different.
How to Choose the Right AR SDK
If you are going to build an AR app, you are probably at the stage of choosing the right AR software development kit. Below are a few things that you need to consider.
Free or Paid
Some licenses allow you to use augmented reality SDKs for free, while others cost money. Developing a product with a free SDK is nice because that’s one less developmental cost. However, those SDKs might have limited features.
With AR SDKs, each one does not work on every platform. If you intend to have your app work with a particular platform, you need to be aware of that.
Smart Glasses Support
Some SDKs also do not work well in conjunction with some of the kinds of smart glasses that are currently on the market. Since smart glasses are one of the primary methods people use to interact with AR, you should also think about that.
Unity is an advanced game engine used in the development of augmented reality apps, especially gaming. So, if you are in this business, try to pick an SDK that is compatible with Unity.
Cloud Recognition or Local Storage
If you want your AR mobile app to recognize many different markers, look into whether the augmented reality development kit supports cloud recognition. With this feature, the cloud stores markers for you. As an advantage, the app doesn’t require much mobile device space.
On-Device (Local) Recognition
Let’s say that you aim to create a simple, relatively small augmented reality mobile app. If so, think about using an AR SDK with on-device, or local, recognition. With this type of setup, a user’s portable device stores markers. So, the app has entire functionality when it is offline.
3D Tracking and Edge (CAD)-Based Tracking
Augmented reality platforms that use 3D image tracking recognize 3D objects, like boxes, toys, cups, and cylinders. This lets you use 3D models and CAD data to set up trackers since they’re the perfect reference for physical 3D objects. This helps to solve typical AR apps problems, such as dynamic scenes, low lighting, or low-textured objects.
Geolocation support is a must for location-based AR apps we mentioned above.
SLAM means Simultaneous Localization and Mapping. It’s a simple technology that lets mobile apps map an environment and track movements in it. Moreover, it can also create indoor navigation. This is what makes SLAM superior technology for AR app development.
Augmented Reality SDK Comparison
The ARCore SDK is for use with Android apps. With it, you get light estimation, environmental understanding, and motion tracking. One issue with it is that it only has a few supported devices right now, including Samsung Galaxy S8, Pixel 2, Pixel 2 XL, and the original Google Pixel. It is free and open-source. If you need an Android AR SDK, this might be the best option.
ARKit is probably what you’ll want to use if you are making an AR app for either iPhone or iPad. With it, you get TrueDepth camera, rendering optimizations, lighting estimation, and scene understanding. The real drawback is that it is still considered to be experimental. You won’t be able to compile it on Windows for Mac. At least you can use it for free, or at a bare minimum cost. For an iOS augmented reality AR SDK, this might be the way to go.
Vuforia supports iOS, Android, Unity3D Editor, and UWP. The functionalities and the plugins are free to use, but you will see the Vuforia watermark when you use it. This SDK can recognize many types of visual objects, such as boxes and planes. It has an excellent environment and text recognition. You can set up the recognition process through either local or cloud storage, but the process is more time-consuming than some other SDKs.
The core of the Kudan augmented reality development kit was developed entirely in C++. It can be leveraged across many development scenarios. Data size, sensitivity, and speed can be adjusted to suit the needs of your AR project. It’s free to use, and it supports both marker-less and marker-based tracking as well.
This AR development kit is free and open-source, which helps if you have a limited budget for your app. It is quite fast, so if you’re working on a real-time AR application, it might be a solid choice. ARToolKit has plugins for Unity, which we mentioned earlier, and also works with OpenSceneGraph. One potential problem with it is that it has an enormous variety of functions. Integrating the library is a challenge. However, overall, this is an AR engine that has one of the best reputations in the business.
EasyAR is not free, and you can pick between two pricing tiers, depending on whether you want the Basic or the Pro package. With it, you get enhanced APIs, top-tier compatibility, and easy workflow. However, the jury’s still out on if this is the right option for most AR apps. You do get SLAM and 3D object-tracking with it, but the cost makes it prohibitive for many devs, especially with what you’re paying for the Pro package. This is AR software that might appeal to only certain app creators.
Based in Salzburg, Austria, Wikitude was founded in 2008. The company first focused on location-based AR experiences, so you could say they got in on the ground floor of this form of tech. There is both a free trial version and a licensed version available. Their AR SDK was used to create the Jack Daniels app, and also ones for the Nissan Leaf, Tui, and Walmart. This is one of the augmented reality development tools that has found wide stream success.
This SDK talks about its “magic face filters” and deep learning vision. You can get a free trial version, but you must pay for the one with more features. With this choice, you can design snapshot face filters for HTML5, mobile, and desktop. That versatility might make it attractive to you. XZIMG has been used to create apps for Match.com, Bic, and Bandai Entertainment. Clearly, this is one of the AR development tools that has caught on with some big names.
Maxst is a technology company that’s focused on AR. There is a free version you can download immediately, or there is a licensed one with some additional features. Several powerful tracking features make this a popular AR SDK. For remote communication, the speed is a bit of an issue, especially for more complex apps.
Lumin SDK is free and open-source. They just came out with a new version that is getting some rave reviews. The latest release features tools such as MLAppConnect, MLAvatar, and MLDCA. This SDK doesn’t work so well with some libraries, but the manufacturer often releases new versions, indicating that they intend to continue tinkering with it. This is one of the augmented reality platforms that seems to be a work in progress.
If you’re looking for the best AR SDK, you’ll find the market is quite crowded. As you try to choose between them, consider whether you need an open-source option or if you have some money to spend. Also, consider whether you plan on creating an app for iOS or Android and whether you want a popular SDK or a more obscure one.
About the Guest Author(s)
Slava Vaniukov, co-founder and CEO at Softermii, has over 9-years of experience in the web and mobile development industry. After getting extensive experience as a Senior Tech Lead, Slava started his own company. Besides that, he is one of the authors for the Softermii blog and tech blogger featured at a wide range of other web resources.