GoogleARCore

Summary

Enumerations

ApkAvailabilityStatus enum
Possible statuses for the ARCore APK availability on a device.
ApkInstallationStatus enum
Possible statuses for an ARCore APK installation request on a device.
AugmentedFaceMode{
  Disabled = 0,
  Mesh = 2
}
enum
Defines possible modes for AugmentedFace detection.
AugmentedFaceRegion{
  NoseTip = 0,
  ForeheadLeft = 1,
  ForeheadRight = 2
}
enum
Defines face regions for which the pose can be queried.
AugmentedImageTrackingMethod{
  NotTracking = 0,
  FullTracking = 1,
  LastKnownPose = 2
}
enum
Indicates whether an image is being tracked using the camera image, or is being tracked based on its last known pose.
CameraConfigDepthSensorUsages{
  RequireAndUse = 0x0001,
  DoNotUse = 0x0002
}
enum
Type of depth sensor usage for a camera config.
CameraFocusMode{
  Fixed = 0,
  Auto = 1
}
enum
Selects the auto focus behavior of the camera.
CameraMetadataTag enum
This enum follows the layout of NdkCameraMetadataTags.
DetectedPlaneFindingMode{
  Disabled = 0,
  HorizontalAndVertical = 1,
  Horizontal = 2,
  Vertical = 3
}
enum
Selects the behavior of the plane detection subsystem.
DetectedPlaneType{
  HorizontalUpwardFacing = 0,
  HorizontalDownwardFacing = 1,
  Vertical = 2
}
enum
Simple summary of the normal vector of a plane.
DeviceCameraDirection{
  BackFacing = 0,
  FrontFacing = 1
}
enum
The direction the device camera used by the session is facing.
DisplayUvCoordinateType{
  BackgroundTexture,
  BackgroundImage,
  UnityScreen
}
enum
Types of UV coordinates used for the display.
FeaturePointOrientationMode enum
The orientation mode for a FeaturePoint.
LightEstimateState{
  NotValid,
  Valid
}
enum
Possible states for LightEstimate.
LightEstimationMode{
  Disabled = 0,
  AmbientIntensity = 1,
  EnvironmentalHDRWithoutReflections = 2,
  EnvironmentalHDRWithReflections = 3
}
enum
Defines possible modes for ARCore real-world light estimation.
LostTrackingReason{
  None = 0,
  BadState = 1,
  InsufficientLight = 2,
  ExcessiveMotion = 3,
  InsufficientFeatures = 4
}
enum
Describes the reason for a loss in motion tracking.
SessionStatus{
  None = 0,
  Initializing = 1,
  Tracking = 100,
  LostTracking = 101,
  NotTracking = 102,
  FatalError = 200,
  ErrorApkNotAvailable = 201,
  ErrorPermissionNotGranted = 202,
  ErrorSessionConfigurationNotSupported = 203
}
enum
Possible states for the ARCore session.
TrackableHitFlags{
  None = 0,
  PlaneWithinPolygon = 1 << 0,
  PlaneWithinBounds = 1 << 1,
  PlaneWithinInfinity = 1 << 2,
  FeaturePoint = 1 << 3,
  FeaturePointWithSurfaceNormal = 1 << 4,
  Default = PlaneWithinPolygon | FeaturePointWithSurfaceNormal
}
enum
Flags representing categories of raycast hits.
TrackableQueryFilter{
  All,
  New,
  Updated
}
enum
A filter for trackable queries.
TrackingState{
  Tracking = 0,
  Paused = 1,
  Stopped = 2
}
enum
Possible tracking states for ARCore.

Classes

GoogleARCore.ARCoreBackgroundRenderer

Renders the device's camera as a background to the attached Unity camera component.

GoogleARCore.ARCoreCameraConfigFilter

The ARCoreCameraConfigFilter class defines the set of features and device capabilities an app would like to have available.

GoogleARCore.ARCoreSession

A component that manages the ARCore Session in a Unity scene.

GoogleARCore.ARCoreSessionConfig

Holds settings that are used to configure the session.

GoogleARCore.Anchor

Attaches a GameObject to an ARCore Trackable.

GoogleARCore.AndroidPermissionsManager

Manages Android permissions for the Unity application.

GoogleARCore.AsyncTask< T >

A class used for monitoring the status of an asynchronous task.

GoogleARCore.AugmentedFace

A face detected and trackable by ARCore.

GoogleARCore.AugmentedImage

An image in the real world detected and tracked by ARCore.

GoogleARCore.AugmentedImageDatabase

A database storing a list of images to be detected and tracked by ARCore.

GoogleARCore.DetectedPlane

A planar surface in the real world detected and tracked by ARCore.

GoogleARCore.EnvironmentalLight

A component that automatically adjusts lighting settings for the scene to be inline with those estimated by ARCore.

GoogleARCore.FeaturePoint

A point in the real world tracked by ARCore.

GoogleARCore.Frame

Provides a snapshot of the state of ARCore at a specific timestamp associated with the current frame.

GoogleARCore.Session

Represents an ARCore session, which is an attachment point from the app to the ARCore service.

GoogleARCore.SessionStatusExtensions

Extension methods for the SessionStatus enumeration.

GoogleARCore.Trackable

An object ARCore is tracking in the real world.

GoogleARCore.VersionInfo

Provides access to information about the current ARCore SDK runtime.

Structs

GoogleARCore.AndroidPermissionsRequestResult

Structure holding data summarizing the result of an Android permissions request.

GoogleARCore.AugmentedImageDatabaseEntry

An entry in a AugmentedImageDatabase.

GoogleARCore.CameraConfig

A configuration for ARCore accessing the device's camera sensor.

GoogleARCore.CameraImageBytes

An ARCore camera image with its data accessible from the CPU in YUV-420-888 format.

GoogleARCore.CameraIntrinsics

A struct to provide camera intrinsics in ARCore.

GoogleARCore.CameraMetadataRational

CameraMetadataRational follows the layout of ACameraMetadata_rational struct in NDK.

GoogleARCore.CameraMetadataValue

Struct to contain camera metadata's value.

GoogleARCore.DisplayUvCoords

Stores UV display coordinates for mapping the four corners of the display.

GoogleARCore.LightEstimate

An estimate of lighting conditions in the environment corresponding to an AR frame.

GoogleARCore.PointCloudPoint

A point in a point cloud.

GoogleARCore.TrackableHit

Contains information about a raycast hit against a physical object tracked by ARCore.

Namespaces

GoogleARCore.CrossPlatform

Enumerations

ApkAvailabilityStatus

 ApkAvailabilityStatus

Possible statuses for the ARCore APK availability on a device.

ApkInstallationStatus

 ApkInstallationStatus

Possible statuses for an ARCore APK installation request on a device.

AugmentedFaceMode

 AugmentedFaceMode

Defines possible modes for AugmentedFace detection.

Properties
Disabled

A mode where AugmentedFace detection is disabled.

Mesh

A mode where AugmentedFace detection performs face pose, region pose, and face mesh estimation.

AugmentedFaceRegion

 AugmentedFaceRegion

Defines face regions for which the pose can be queried.

Left and right of an Augmented Face are defined relative to the person that the mesh belongs to.

Properties
ForeheadLeft

A region around the left forehead of the AugmentedFace.

ForeheadRight

A region around the right forehead of the AugmentedFace.

NoseTip

A region around the nose of the AugmentedFace.

AugmentedImageTrackingMethod

 AugmentedImageTrackingMethod

Indicates whether an image is being tracked using the camera image, or is being tracked based on its last known pose.

Properties
FullTracking

The Augmented Image is currently being tracked using the camera image.

This state can only occur when the image's TrackingState is TrackingState.Tracking.

LastKnownPose

The Augmented Image is currently being tracked based on its last known pose, because it can no longer be tracked using the camera image.

This state can only occur when the image's TrackingState is TrackingState.Tracking.

NotTracking

The Augmented Image is not currently being tracked.

This state indicates that the image's TrackingState is TrackingState.Paused or TrackingState.Stopped.

CameraConfigDepthSensorUsages

 CameraConfigDepthSensorUsages

Type of depth sensor usage for a camera config.

Properties
DoNotUse

Indicates that ARCore will not attempt to use a depth sensor, even if it is present.

Most commonly used to filter camera configurations when the app requires exclusive access to the depth sensor outside of ARCore, for example to support 3D mesh reconstruction. Available on all ARCore supported devices.

RequireAndUse

Indicates that a depth sensor must be present on the device, and the depth sensor will be used by ARCore.

Not supported on all devices.

CameraFocusMode

 CameraFocusMode

Selects the auto focus behavior of the camera.

Properties
Auto

Auto camera focus mode.

Fixed

Fixed camera focus mode.

CameraMetadataTag

 CameraMetadataTag

This enum follows the layout of NdkCameraMetadataTags.

The values in the file are used for requesting / marshaling camera image's metadata. The comments have been removed to keep the code readable. Please refer to NdkCameraMetadataTags.h for documentation: https://developer.android.com/ndk/reference/ndk_camera_metadata_tags_8h.html .

DetectedPlaneFindingMode

 DetectedPlaneFindingMode

Selects the behavior of the plane detection subsystem.

Properties
Disabled

Plane detection is disabled.

Horizontal

Detection of only horizontal planes is enabled.

HorizontalAndVertical

Detection of both horizontal and vertical planes is enabled.

Vertical

Detection of only vertical planes is enabled.

DetectedPlaneType

 DetectedPlaneType

Simple summary of the normal vector of a plane.

Properties
HorizontalDownwardFacing

A horizontal plane facing downward.

HorizontalUpwardFacing

A horizontal plane facing upward.

Vertical

A vertical plane.

DeviceCameraDirection

 DeviceCameraDirection

The direction the device camera used by the session is facing.

Properties
BackFacing

The device camera faces the world.

FrontFacing

The device camera faces the user.

DisplayUvCoordinateType

 DisplayUvCoordinateType

Types of UV coordinates used for the display.

Properties
BackgroundImage

The background image bytes used for CPU access to the pass-through camera image available from GoogleARCore.Frame.CameraImage.AcquireCameraImageBytes.

BackgroundTexture

The background texture used to display the pass-through camera available from GoogleARCore.Frame.CameraImage.Texture.

UnityScreen

The Unity Screen.

FeaturePointOrientationMode

 FeaturePointOrientationMode

The orientation mode for a FeaturePoint.

LightEstimateState

 LightEstimateState

Possible states for LightEstimate.

Properties
NotValid

Estimate is not valid and should not be used.

Valid

Estimate is valid.

LightEstimationMode

 LightEstimationMode

Defines possible modes for ARCore real-world light estimation.

Properties
AmbientIntensity

Lighting estimation is enabled, generating ambient intensity and color-correction estimation.

Disabled

A mode where light estimation is disabled.

EnvironmentalHDRWithReflections

Lighting estimation is enabled.

ARCore will estimate lighting to provide directional light, ambient spherical harmonics, and reflection cubemap estimation. This LightEstimationMode is incompatible with front-facing (selfie) camera.

EnvironmentalHDRWithoutReflections

Lighting estimation is enabled.

ARCore will estimate lighting to provide directional light and ambient spherical harmonics. This LightEstimationMode is incompatible with the front-facing (selfie) camera.

LostTrackingReason

 LostTrackingReason

Describes the reason for a loss in motion tracking.

Properties
BadState

An internal error is causing motion tracking to fail.

ExcessiveMotion

Excessive movement of the device camera is causing motion tracking to fail.

InsufficientFeatures

A lack of visually distinct environmental features in the camera feed is causing motion tracking to fail.

InsufficientLight

The camera feed being too dark is causing motion tracking to fail.

None

Motion tracking is working properly.

SessionStatus

 SessionStatus

Possible states for the ARCore session.

Properties
ErrorApkNotAvailable

The ARCore session cannot begin tracking because the ARCore service APK is not available on the device.

ErrorPermissionNotGranted

The ARCore session cannot begin tracking because an Android permission is not granted (e.g.

android.permission.CAMERA).

   Use  to check if
   the required Android permission has been granted.
     

ErrorSessionConfigurationNotSupported

The ARCore session cannot begin tracking because the session configuration supplied is not supported or no session configuration was supplied.

To recover, fix the configuration and ensure ARCoreSession is not enabled. Once SessionStatus is SessionStatus.NotTracking, ARCoreSession can be enabled.

FatalError

The ARCore session cannot begin tracking because a fatal error was encountered.

Initializing

The ARCore session is initializing.

LostTracking

The ARCore session has lost tracking and is attempting to recover.

None

The ARCore session has not been initialized.

NotTracking

The ARCore session is paused.

Tracking

The ARCore session is tracking.

TrackableHitFlags

 TrackableHitFlags

Flags representing categories of raycast hits.

Properties
Default

This value is used to collide with all things good for placing objects.

If you pass this into Raycast, you will collide with planes within the bounding polygon and feature points with normals.

FeaturePoint

The collision is on a feature point in the current frame's point cloud.

FeaturePointWithSurfaceNormal

The collision is on a feature point in the current frame's point cloud that has a surface normal estimate (orientation).

None

This value is returned on a TrackableHit to indicate no collision occurred.

If you pass this into Raycast, you will not get any collision results.

PlaneWithinBounds

The collision is within the DetectedPlane's bounding box.

PlaneWithinInfinity

The collision is on the DetectedPlane, but not limited to the bounding box or polygon.

This acts as if the plane extends out to infinity.

PlaneWithinPolygon

The collision is within the DetectedPlane's convex bounding polygon.

TrackableQueryFilter

 TrackableQueryFilter

A filter for trackable queries.

Properties
All

Indicates available trackables.

New

Indicates new trackables detected in the current ARCore Frame.

Updated

Indicates trackables that were updated in the current ARCore Frame.

TrackingState

 TrackingState

Possible tracking states for ARCore.

Properties
Paused

ARCore has paused tracking the entity but may resume tracking it in the future.

Stopped

ARCore has stopped tracking the entity and will never resume tracking it.

Tracking

The entity is actively being tracked.

Send feedback about...