Google is committed to advancing racial equity for Black communities. See how.

AR Foundation and ARCore Extensions for Unity capabilities and features

AR Foundation is a cross-platform framework that allows you to build augmented reality experiences once, then build for either Android or iOS devices. ARCore Extensions for AR Foundation enables additional ARCore functionality and features that are not (yet) exposed through AR Foundation and the ARCore XR plugin on Android and the ARKit XR plugin on iOS.

ARCore feature AR Foundation with ARCore Extensions
Supported Unity versions Unity 2019.4.3f1 or later
Unity XR support Install the AR Foundation and ARCore XR Plugin packages, and enable ARCore plug-in provider under Project Settings > XR Plug-in Management (Android)
GitHub repo(s)
(SDK / samples)
google-ar/arcore-unity-extensions
Unity-Technologies/arfoundation-samples
In-editor development workflow AR Remoting & Simulation
Pause the AR Session Disable the ARSession game object
Detect tracking issues Use notTrackingReason provided by ARSession and returning a NotTrackingReason
Select camera config See Configuring the camera for ARCore Extensions
Plane finding Use Plane Detection provided by ARPlaneManager
Local anchors Use Anchors provided by ARAnchorManager
Cloud Anchors Provided by ARCore Extensions
Basic light estimation Use Ambient Intensity Light Estimation mode provided by ARCameraManager
Environmental HDR light estimation Automatically enabled when a compatible camera config is selected and one or more Environmental HDR settings are selected:
  • Ambient Spherical Harmonics, Main Light Direction, Main Light Intensity in the Light Estimation mode provided by ARCameraManager
  • Environmental Probes are enabled in an AREnvironmentProbeManager
Augmented Images Use (2D) Image Tracking provided by ARTrackedImageManager
Augmented Faces Use Face Tracking provided by ARFaceManager
Depth API Use AROcclusionManager to enable Automatic Occlusion in AR Foundation 4.1.0-preview.2 or later with ARCore XR Plugin 4.1.0-preview.2 or later
Raycasting Use Raycasting provided by ARRaycastManager
Feature points Use Point Clouds provided by ARPointCloudManager
AR camera image access Use Pass-through video provided by ARCameraBackground
CPU image access Provided by AR Foundation
GPU texture access Accessible as external Texture2Ds.
Multithreaded rendering Supported in Android Player Settings in AR Foundation 2.1.0 or later.

Next steps