Augmented Reality (AR) is an emerging technology that enhances the ability to present computer-generated content along with the real world. It combines digital image processing, 3D graphics, artificial intelligence, and various other fields to create its enhanced capabilities.

This is a real photo taken from Google Maps' newest AR integration, currently limited to private-alpha users. Photo credit: Nick Bastone

What is under the hood?

There are several popular AR development libraries and frameworks available for mobile app development. To the date, most of them rely on ARKit and ARCore SDKs provided by Apple and Google respectively.

iOS ARKit and Android ARCore are two native SDKs that utilize the device’s camera, motion sensors, and processing power to overlay virtual objects onto the real world, creating interactive and realistic AR content.

These were initially released in mid-2017 and the following are some common features/capabilities for AR development.

1. World Tracking

2. Scene Understanding

3. Motion Tracking

4. Face Tracking

5. Image and Object Recognition

React-native AR libraries

Viro-react is one of the popular libraries for react-native AR development when compared with other options. It uses native AR capabilities on both iOS and Android platforms and ensures a high-quality and immersive experience for users with comprehensive support for 3D models, animations, physics, and user interactions.