Google today launched a preview of ARCore, an Android software development kit (SDK) that brings augmented reality to existing and future Android phones without requiring additional sensors or hardware. Developers can download the SDK now and start creating new AR experiences on Android.
The ARCore preview currently supports the Google Pixel, Google Pixel XL, Samsung’s Galaxy S8, and Samsung’s Galaxy S8+. Android 7.0 Nougat or above is required. Google is hoping to have ARCore on 100 million devices by the end of the preview (no final release date was provided). Google is working with manufacturers like Samsung, Huawei, LG, Asus, and others to make that happen “with a consistent bar for quality and high performance.”
Today’s launch is the next big step in Google’s plan to bring AR capabilities to more devices. ARCore is built on the work already done with Tango, the company’s augmented reality platform. Tango was first released in June 2014 and since then has only made it to a handful of devices, including just two commercial phones: Lenovo’s Phab 2 Pro in August 2016 and Asus’ Zenfone AR this month.
While very powerful in terms of potential, Tango is very limited in terms of reach, as it relies on specific hardware. ARCore is supposed to more broadly leverage Android, which Google touts as “the largest mobile platform in the world.” (There are currently over 2 billion Android devices). Still, 100 million out of 2 billion is only 5 percent, so unless you have a flagship phone from the last year or so, don’t hold your breath.
ARCore is focusing on three areas in its efforts to bring augmented reality to Android phones: motion tracking, environmental understanding, and light estimation.
Motion tracking is achieved by using the phone’s camera to observe feature points in the room and inertial measurements from the device’s IMU sensor. This process, called visual inertial odometry (VIO), lets ARCore determine the pose (position and orientation) of the phone relative to the world over time. By aligning the pose of the virtual camera that renders the 3D content with the pose of the device’s camera provided by ARCore, virtual content is rendered from the correct perspective and remains accurately placed as it is rendered on top of the image obtained from the device’s camera.
Environmental understanding means AR objects can be placed on surfaces, such as a floor or a table. ARCore can detect horizontal surfaces using the same feature points (visually distinct features in the captured camera image that ARCore can recognize even when the camera’s position changes slightly) that it uses for motion tracking. ARCore estimates pose changes by triangulating on these feature points between successive frames, looks for clusters of feature points that appear to lie on common horizontal surfaces, determines each plane’s boundary, and makes these surfaces available to the app as planes.
Light estimation allows ARCore to observe the ambient light in the environment and make it possible for developers to light virtual objects in ways that match their surroundings, making their appearance even more realistic. Developers are thus provide with the average intensity of a given camera image, letting them light virtual objects under the same conditions as the environment around them.
Google’s answer to Apple’s ARKit
Google is not holding back in terms of wooing developers. ARCore works with Java/OpenGL, Unity, and Unreal Engine.
Epic told VentureBeat it is shipping ARCore support in Unreal Engine 4.18, which will be released in mid-October. Version 4.18 preview builds will be released to developers “in a few weeks.”
But ARCore is the company’s boldest project yet. ARCore and its ties to Android will undoubtedly be compared to Apple’s ARKit and iOS, which we’ll be hearing more about next month.
Google has seen iOS developers experimenting with ARKit over the past few months, and it naturally doesn’t want Android developers to feel left behind. Unveiling ARCore today is likely only the beginning — we’d expect updates and much more details in the months ahead as the preview progresses.
In that vein, the company has set up a new AR Experiments showcase “where you can find some fun examples of what’s possible.” Developers can share their ARCore creations on social networks with the hashtag #ARCore, and Google promises to reshare the most compelling examples.