AR Frameworks in Comparison
Dieser Artikel ist auch auf deutsch verfügbar.
What is Augmented Reality?
Augmented Reality ("AR") involves extending reality by adding digital content via a headset or smartphone camera. This is different from Virtual Reality ("VR"), where users are immersed in a new, fully digital world.
Therefore, Virtual Reality is primarily used in the entertainment sector, while AR finds numerous applications in industry sectors and the world of work. In recent years, Augmented Reality has developed great potential in marketing, e-commerce and B2B.
You can find numerous application examples around the topic of AR here.
What is a Framework?
Frameworks provide a basis that programmers can build their work upon. They are not stand-alone, ready-made programs, but offer the developer a basis that saves them a lot of work. Certain parts are already prefabricated and the remaining development can concentrate on the individual requirements of the project.
Frameworks are therefore often used for complicated technologies that can not be reinvented for every job. Examples are often complex mathematical topics such as AI or machine learning, tracking, 3D rendering, etc.
Companies often develop frameworks or so-called SDKs (software development kits) for professional users for commercial reasons. Usually, various licenses for the use of the technology are sold. But free frameworks are not uncommon either.
What are the Advantages of AR Frameworks for Development?
As previously described, the developer can save themself a lot of work, which is of course already a great advantage. This makes development more financially interesting. However, the use of frameworks brings even more advantages.
When developing software, dividing labor is always a benefit, both for the parties involved and for the end result. Each party only has to care about its part of the process, the development team of the framework does their work, the framework-users do theirs. This way, updates can be released more frequently, which benefits security and user experience.
The separate and therefore focused development of the framework leads to quick response times, no matter the circumstances. For example, if multiple developers use the sam pieces of code to do certain things, security changes can be rolled out widely far quicker.
Also, framework development teams have the time and budget to optimize and deploy software for many different platforms. As a result, solutions that access the software become more attainable and can be used by a broader audience. That, again, makes reactions to software updates and hardware releases quick. That way, the technology remains up-to-date at all times and can be used on a large scale.
The Best Augmented Reality Frameworks
In order to be able to, for example, place filters on users' faces with AR, developers previously had to try to derive the most accurate 3D data possible from a two-dimensional camera image. This worked quite well at some point but was far from ideal. However, that changed with the release of Apple's ARKit. Thanks to Apple's True Depth cameras, ARKit can provide very accurate 3D data without depending on a 2D camera image. So developers have the ability to be very accurate thanks to ARKit.
That being said, the technology is also definitely meant for experienced developers and less suitable for beginners. This is because the development takes place in XCode - programming skills are definitely required. In return, ARKit of course comes with quite a few professional features.
And: Since ARKit is an Apple product, it of course only works for iOS devices.
ARCore is the Augmented Reality SDK from Google. The big advantage here is cross-platform and cross-device support, so that many different systems can be addressed with one SDK and the respective API. To support iOS devices, ARCore forms an interface to ARKit. Thus, the development of AR applications for Android and iOS can be linked. However, not only iOS and Android are supported, but also the game engines Unity (with ARFoundation) and Unreal (with UnrealAR).
ARCore is also not primarily aimed at beginners, but it is a much better introduction to AR than other frameworks due to the support of the Unreal Engine and especially Unity. Still, programming knowledge and some experience are required.
To provide their own solution, Unity has developed Unity MARS in addition to existing AR functionality. MARS is a paid extension to the standard Unity Editor that brings quite a bit of functionality for creating AR solutions. It comes with lots of features and the ability to simulate programs in Unity directly. This saves the developer a significant part of the prototyping process and thus gets better results in less time.
The use of Unity MARS requires a subscription-based license, apart from the 45-day trial period.
Although programming experience is certainly useful here, simple solutions are possible without. Therefore, Unity MARS offers a good entry point to AR development.
Vuforia is one of the most widely used AR SDKs. It excels with broad support and regular updates. Also, Vuforia supports iOS, Android and even runs in the Unity game engine and in so-called UWP apps. These are apps that run on Windows 10 / 11 systems. The most common AR glasses are also supported.
Even though development with Unity is possible, programming skills and some experience are required.
The Mixed Reality Toolkit from Microsoft is a comprehensive framework for the development of AR and VR solutions. It supports iOS and Android, Occulus Rift and Quest, HTC Vive, Holo Lens 1 & 2, and all Windows Mixed Reality devices.
However, MRTK does not run standalone, but either in Unity or the Unreal Engine. Again, programming experience or at least a rough knowledge of Unity or Unreal definitely helps. However, simple scenes can be created without much experience.
Then there is the added luxury that MRTK is not only free but open source.
Blippar is a British AR company that has developed Blippbuilder. It offers a simple and intuitive development environment that doesn't require any programming skills. Also, the creation of an AR experience is free of charge initially. So building and getting creative doesn't cost you a dime in Blipbulder. It is therefore primarily aimed at newbies and enthusiasts, not at established developers or even development studios.
You are only charged for the release and distribution of your program. Prices vary depending on local or global release. This refers to the rollout via the Blippar app. The user would then have to download that to scan a marker (e.g., printed out).
Integration into an existing smartphone app is also possible. Blippar offers an AR SDK for this purpose. However, that requires advanced programming skills.
Spark AR Studio is a development environment provided by Facebook (Meta) for creating AR filters. Here, anyone can build filters for free to publish on Instagram and Facebook. A library of tutorials and an analytics tool are also available.
Programming skills are not required - Spark AR works with a modern visual editor. However, you are obviously pretty limited. Both because you can only create filters and because you can only publish to Facebooks platforms. Spark AR does what it is supposed to do - nothing more, nothing less.
Snap Inc, the company behind the messenger Snapchat, provides for a steady supply of Snapchat filters with Lens Studio and the Lens Web Builder. The two solutions differ mainly in their complexity.
The Web Builder is a bit simpler, runs comfortably in the browser and does not require any programming skills. Lens Studio on the other hand is a professional development environment with many advanced features.
While publishing is theoretically cross-platform, that's just because you can only publish to the Snapchat app. That, of course, runs equally well on iOS and Android.
Wikitude offers an AR SDK for professionals, but also Wikitude Studio. That provides a quite intuitive 3D development interface, with which you can work even without programming skills. In addition, some professional features such as cloud recognition are available.
Here, too, the publication first runs via the own Wikitude app. This makes it very easy at first. However, the integration into an own app requires the use of the SDK. Very similar to Blippar's solution.
In general though, Wikitude is more of a professional solution anyway. The licensing plans with their professional features are definitely not aimed at beginners.
ZappWorks is ZappAR's comprehensive AR development platform that is not limited to WebAR. With ZappWorks, "anyone" should be able to develop AR. There are different tools for different audiences of developers. There is Studio, Designer and the SDK. One's prior experience determines the choice of tool.
You then choose whether you want to publish for the web or in an app. You don't necessarily have to be a programmer for that either. This makes ZappWorks a real all-rounder solution - in many respects. Not only in terms of the target group or the "level of difficulty", but also in terms of the development goal and the publishing method.
8th Wall is a very powerful tool for creating WebAR solutions. It is characterized mainly by a comprehensive and professional feature set, many templates to start with, large-scale support of various libraries (three.js, A-Frame, ...) and some more.
After purchasing a license, you can develop in the 8th Wall web editor. However, this is aimed exclusively at advanced users, as the workflow is very code-heavy. Without programming knowledge, you are not getting very far here.
8th Wall is definitely not a beginner's solution - this is apparent from the price alone. Not only do you pay for the editor, but also for publishing projects with commercial value. The rates are staggered according to the number of included views. If the WebApp gets more views than agreed upon in the licence, you pay extra per view. Not that this is bad per se - this is standard practice in the business sector. 8th Wall is simply not tailored to private users and beginners.
PlayCanvas is actually a browser-based game engine. Might sound a little dubious, but PlayCanvas packs a serious punch. In addition to the usual game engine featureset, a few AR SDKs are supported - for example, the one from ZappWorks. Since mid-December last year (Dec. 2021), the SDK from Blippar is also included. The workflow, when it comes to AR, is similar to that of other game engines such as Unity. The big difference being that the development takes place in the browser.
Small, simpler AR programs can also be built without ever writing a single line of code.
For an introduction to development with PlayCanvas and the ZappWorks SDK, I recommend this YouTube video.
Sumerian is a service from Amazon and is part of Amazon Web Services (AWS). It is primarily aimed at beginners and private people in the field of VR / AR. It aims to make it easier for everyone to get started with AR / VR. This is done through a completely visual workflow, a browser-based editor and the possibility to test Sumerian for free.
The editor can be used via a standard AWS (Amazon Web Services) account and is completely free of charge. You only have to pay for the additional storage space that the saved projects need on the Amazon servers. That makes Sumerian one of the most affordable solutions when it comes to WebAR development.
Although Sumerian is aimed mainly at beginners, the featureset is impressively extensive, so that even advanced AR developers should get their money's worth - and more.
vectary offers a very modern web editor for creating 3D content and WebAR. The featureset is quite large, the user interface is sleek and intuitive, and it's even free to get started. Moreover, you can get by without any code which is for example good for independent (3D) designers who want to expand their skillset.
Important to know: Even if the unrestricted(!) use of the 3D editor is free, you have to pay for WebAR functions. The "Premium" package offers preview and publishing of your own WebAR solutions and extended export possibilities for a very low price.
Vectary offers a pretty good service, but it is aimed mostly at designers and AR beginners.
About the author
I write about my passion for technology and digital strategies. Would you like to find out more about how I work and my projects?