Augmented Reality (AR) is not only here to stay, it is here to grow, both in number of applications and in importance for our daily activities. At icapps we have been convinced of this for quite a while now. And, as you know by now, we like to be on top of technology in order to serve our customers with the best possible solution at any given moment. So a number of enthusiasts, including myself, has been happily using this technology – for customers and for ourselves - and we have gathered valuable experience while doing so. High time to share some of our findings and to translate them into useful tips and tricks.
Lesson 1: There’s no such thing as one AR
Did you believe that Augmented Reality would be a single-platform environment? That one AR would rule them all? Think again! Time and again we have experienced that there’s a huge difference between building an AR app for iOS or for Android. At first, this was less of an issue: our focus was on ARKit, the iOS AR development platform, as this clearly emerged as a pioneer in the world of AR. But gradually we found out that ARCore, the Android equivalent, should not be ignored either by now.
Therefore, when developing an AR app, you will have to make this choice: are you going to build an app for iOS, for Android or both? This choice will define your selection of development tools. iOS apps will require ARKit, Android will call for ARCore. When you decide, however, to release on both platforms, you should really take a look at Unity with its Vuforia engine and its AR foundation package, which offer you a central starting point for development on both platforms.
In any case, it is important to note that your model will never look 100% the same: environmental understanding, light estimation and motion tracking are done differently on both platforms. We got a whole different look of the same 3D model exported in ARKit (first picture below) vs ARCore (second picture below). The challenge here is to get them to look the same.
Then again, you may not go through all this trouble. If only the basic functionalities are required, you may settle for BLIPPAR, SparkAR or Wikitude. These platforms make it a lot easier for the user to create effects, filters and simple AR experiences, even if you don’t have any coding experience. They can be the perfect solutions if basic AR functionality is all your app needs.
Lesson 2: Mind the hardware (and its limitations)
AR can be very demanding for mobile devices, especially when showing 3D objects. A lot of users (especially on tablet) have low-end processing power in their devices that might turn your AR experience annoyingly slow. You should always take this into account: it would be a shame if your AR creation looks gorgeous on your high-end device but, when released, you notice half of the users can’t run it on their device.
Zomerbingel AR - made by icapps & Firewolf, AR enriches this experience as children are immersed into a whole new world, it complements the imagination
Generally, we can advise you to build models that are not too large and to watch your polygon count. By applying retopology, for instance, you can optimize the 3D model in order to lower the amount of polygons. You can also decrease lag by checking the frame rate and adjusting your app accordingly. On the Zomerbingel app that we created, a frame rate check is performed on the homescreen. When it drops below 30 FPS, the 3D model is switched to a model that is less HD (High-Definition) but still very similar looking.
Also, you can turn off certain lighting/shadows effects when they’re not needed for the AR experience.
Lesson 3: Warning! Use warning messages
AR can be an overwhelming experience, causing users to forget about the surroundings they’re actually in. Users should therefore always get a warning message prior to using the AR app, stating that it’s important to be aware of your surroundings.
This warning should also be adapted when your AR app is aimed at children. We learned this when creating our Zomerbingel app. The more general warning, that we use in most AR apps, was eventually replaced by an adapted, more explicit message.
Zomerbingel AR - Warning message
Lesson 4: Don’t use AR just ‘to have AR’
An AR experience can be fun. And developing an AR app can be loads of fun too, I can assure you. But you shouldn’t create AR just for fun. Before even starting an AR development journey, you should ask yourself repeatedly, “why are we using AR and what problem does it solve?”, and you should obviously get a convincing answer as well.
Focus on the core functionalities and the main objective of the app first, then think about the reasons for using AR within your app. A lot of companies try to be innovative and implement AR just for the sake of having AR. As a result, in a lot of cases it provides no added value to the app.
Defining if and how AR can provide an added value, can be very challenging. Consider your target audience and offer things the user would value. Make it useful, make it relevant. It should enhance an experience.
If you need examples of AR being used as a true added value, you can google AR in combination with Ikea place, Inkhunter, or U.S. army enhanced vision. This will give you a fair idea.
More generally speaking, AR can often prove beneficial in a sales scenario. When potential buyers can view products come to life in a matter of seconds using an AR experience, they will probably be persuaded more easily.
Lesson 5: AR is a team effort
Developing an AR app is not your standard day-to-day project. It is a very visual process, even for the developer. I strongly advise you to let your 3D designers and developers work close, as in: right next to each other. This will significantly speed up the process of adding a model in AR, as the tool used to visualize the model usually requires certain knowledge about how to make your object look good. A close collaboration between designer and developer will increase the interactivity between ideas and actual appearance and will enable them to reach the desired result more quickly.
Want to know more about AR and other hot topics of the future? Stay up to date by joining one of our innovation talks.