Extensions

Summary

Enumerations

AndroidXRPermission{
  SceneUnderstandingCoarse = 0,
  SceneUnderstandingFine = 1,
  HandTracking = 2,
  EyeTrackingCoarse = 3,
  EyeTrackingFine = 4,
  FaceTracking = 5,
  BodyTracking = 9
}
enum
Permissions required by Android XR tracking services.
XRBodyJointSet{
  UpperBody = 0,
  FullBody = 1
}
enum
The set of body joints to track by the platform.
XRFoveationLevel{
  None = 0,
  Low = 1,
  Medium = 2,
  High = 3
}
enum
Enum corresponding to XrFoveationLevelFB.
XRFullBodyJointID{
  Invalid = 0,
  BeginMarker = 1,
  Hips = BeginMarker,
  Spine,
  Ribs,
  Chest,
  Neck,
  Head,
  LeftShoulder,
  RightShoulder,
  LeftUpperArm,
  RightUpperArm,
  LeftLowerArm,
  RightLowerArm,
  LeftHand,
  RightHand,
  LeftUpperLeg,
  RightUpperLeg,
  LeftLowerLeg,
  RightLowerLeg,
  LeftFoot,
  RightFoot,
  LeftToes,
  RightToes,
  EndMarker
}
enum
Represents the type of an skeleton joint.
XRMarkerDictionary{
  ArUco4x4_50 = 0,
  ArUco4x4_100 = 1,
  ArUco4x4_250 = 2,
  ArUco4x4_1000 = 3,
  ArUco5x5_50 = 4,
  ArUco5x5_100 = 5,
  ArUco5x5_250 = 6,
  ArUco5x5_1000 = 7,
  ArUco6x6_50 = 8,
  ArUco6x6_100 = 9,
  ArUco6x6_250 = 10,
  ArUco6x6_1000 = 11,
  ArUco7X7_50 = 12,
  ArUco7X7_100 = 13,
  ArUco7X7_250 = 14,
  ArUco7X7_1000 = 15,
  AprilTag_16H5 = 16,
  AprilTag_25H9 = 17,
  AprilTag_36H10 = 18,
  AprilTag_36H11 = 19
}
enum
Describes the type of Supported marker dictionaries.
XRMeshSemantics{
  OTHER = 0,
  FLOOR = 1,
  CEILING = 2,
  WALL = 3,
  TABLE = 4
}
enum
An enum representing the vertex semantics of a scene mesh.
XRObjectLabel{
  Unknown = 0,
  Keyboard = 1,
  Mouse = 2,
  Laptop = 3
}
enum
Describes the type of object that the system has identified.
XRPassthroughCameraStates{
  Disabled = 0,
  Initializing = 1,
  Ready = 2,
  Error = 3
}
enum
Defines possible passthrough camera states.
XRSceneMeshTrackingState{
  INITIALIZING = 0,
  TRACKING = 1,
  WAITING = 2,
  ERROR = 3
}
enum
An enum representing the scene mesh tracking state.
XRSpatialSdkVersions{
  XRSpatialApiLevelAuto = 0,
  XRSpatialApiLevel1 = 1,
  XRSpatialApiLevel3 = 3
}
enum
The XR Spatial API levels to specify in the manifest to filter applications from devices that don't meet its hardware and software feature requirements.
XRUpperBodyJointID{
  Invalid = 0,
  BeginMarker = 1,
  Hips = BeginMarker,
  Spine,
  Ribs,
  Chest,
  Neck,
  Head,
  LeftShoulder,
  RightShoulder,
  LeftUpperArm,
  RightUpperArm,
  LeftLowerArm,
  RightLowerArm,
  LeftHand,
  RightHand,
  EndMarker
}
enum
Represents the type of an skeleton joint.
XrInputModalities{
  Unknown = 0,
  Head = 1 << 0,
  Controller = 1 << 1,
  Hands = 1 << 2,
  Mouse = 1 << 3,
  GazeAndGesture = 1 << 4
}
enum
The possible input modality states within the default environment.

Typedefs

ARFaceFeature using
UnityEngine.XR.OpenXR.Features.Android.ARFaceFeature
ARSessionFeature using
UnityEngine.XR.OpenXR.Features.Android.ARSessionFeature
TrackableId using
UnityEngine.XR.ARSubsystems.TrackableId
XrTrackableImageDatabase using
System.UInt64

Classes

Google.XR.Extensions.ARFaceExtensions

Extensions to AR Foundation's ARFace.

Google.XR.Extensions.ARFaceManagerExtensions

Extensions to AR Foundation's ARFaceManager.

Google.XR.Extensions.ARTrackedImageExtensions

Extensions to AR Foundation's ARTrackedImage class.

Google.XR.Extensions.ARTrackedObjectExtensions

Extensions to AR Foundation's ARTrackedObject class.

Google.XR.Extensions.AndroidXREnvironmentProbeSubsystem

The Android XR implementation of the XREnvironmentProbeSubsystem so it can work seamlessly with AREnvironmentProbeManager.

Google.XR.Extensions.AndroidXRHumanBodySubsystem

The Android XR implementation of the XRHumanBodySubsystem so it can work seamlessly with ARHumanBodyManager.

Google.XR.Extensions.AndroidXRImageTrackingSubsystem

The Android XR implementation of the XRImageTrackingSubsystem so it can work seamlessly with ARTrackedImageManager.

Google.XR.Extensions.AndroidXRObjectTrackingSubsystem

The Android XR implementation of the XRObjectTrackingSubsystem so it can work seamlessly with ARTrackedObjectManager.

Google.XR.Extensions.AndroidXRPermissionExtensions

Helper class for AndroidXRPermission.

Google.XR.Extensions.AndroidXRPermissionUtil

Utility component to help manage runtime permission requests.

Google.XR.Extensions.AndroidXRRuntimeImageLibrary

Constructs a RuntimeReferenceImageLibrary which stores reference images

Google.XR.Extensions.AndroidXRSessionSubsystem

The Android XR implementation of the XRSessionSubsystem so it can work seamlessly with ARSession.

Google.XR.Extensions.AndroidXRTrackpadGesturesInteraction

This OpenXRInteractionFeature enables the use of Android XR Trackpad Gestures interaction in OpenXR.

Google.XR.Extensions.SampleDebugUtils

Utilities to debug Android XR samples.

Google.XR.Extensions.XRBodyJointSetUtility

Utility class for XRBodyJointSet and individual joint set IDs.

Google.XR.Extensions.XRBodyTrackingFeature

This OpenXRInteractionFeature configures Android XR extensions XR_ANDROIDX_body_tracking at runtime and provides XRHumanBodySubsystem implementation that works on Android XR platform.

Google.XR.Extensions.XRCubemapLightEstimationFeature

This feature provides access to the XR_ANDROID_light_estimation_cubemap extension and implements XREnvironmentProbeSubsystem .

Google.XR.Extensions.XRFineEyeFeature

This feature exposes fine eye info provided by XR_ANDROID_eye_tracking extension.

Google.XR.Extensions.XRFoveationFeature

This OpenXRInteractionFeature configures the XR_FB_foveation

extension at OpenXR runtime.

Google.XR.Extensions.XRHumanBodyProportions

Defines the human body proportions to be used for computing the rest pose skeleton.

Google.XR.Extensions.XRImageTrackingFeature

This OpenXRFeature configures Android XR extensions XR_ANDROID_trackables, XR_ANDROID_trackables_image, and XR_EXT_future at runtime and provides a XRImageTrackingSubsystem implementation that works on the Android XR platform.

Google.XR.Extensions.XRMarkerDatabase

A marker database is a collection of XRMarkerDatabaseEntry which stores marker information used to configure marker tracking at runtime when XRMarkerTrackingFeature is enabled.

Google.XR.Extensions.XRMarkerTrackingFeature

This OpenXRInteractionFeature configures Android XR extensions XR_ANDROID_trackables and XR_ANDROID_trackables_marker at runtime and provides XRImageTrackingSubsystem implementation that works on Android XR platform.

Google.XR.Extensions.XRMeshSubsystemExtension

Extensions to AR Foundation's XRMeshSubsystem class.

Google.XR.Extensions.XRObjectTrackingFeature

This OpenXRInteractionFeature configures Android XR extensions XR_ANDROID_trackables and XR_ANDROID_trackables_object at runtime and provides XRObjectTrackingSubsystem implementation that works on Android XR platform.

Google.XR.Extensions.XRPassthroughFeature

This OpenXRInteractionFeature configures the XR_ANDROID_composition_layer_passthrough_mesh and XR_ANDROID_passthrough_camera_state extensions at OpenXR runtime and provides passthrough geometry capabilities in the OpenXR platform.

Google.XR.Extensions.XRPassthroughLayerData

Example of defining a layer data script for a passthrough layer.

Google.XR.Extensions.XRQrCodeTrackingFeature

This OpenXRInteractionFeature configures Android XR extensions XR_ANDROID_trackables and XR_ANDROID_trackables_qr_code at runtime and provides XRImageTrackingSubsystem implementation that works on Android XR platform.

Google.XR.Extensions.XRRecommendedSettingsFeature

This XRRecommendedSettingsFeature provides a function to query the recommended settings information at runtime.

Google.XR.Extensions.XRSceneMeshingFeature

This feature provides access to the XR_ANDROID_scene_meshing extension.

Google.XR.Extensions.XRSessionFeature

This OpenXRInteractionFeature provides Android XR session management for all extended Android XR features, and common session configurations.

Google.XR.Extensions.XRSpatialSdkExtensions

Helper class for the usage of XRSpatialSdkVersions.

Google.XR.Extensions.XRStreamingFeature

This OpenXRInteractionFeature provides Android XR Direct Preview support within Editor, require Android XR Streaming runtime to be preinstalled on the host.

Google.XR.Extensions.XRUnboundedRefSpaceFeature

This XRUnboundedRefSpaceFeature makes the UNBOUNDED reference space available in this app and can be used by setting the XRInputSubsystem tracking origin mode.

Google.XR.Extensions.XrResultExtensions

Extension class for XrResult, including helpers of OpenXRResultStatus and XRResultStatus.

Structs

Google.XR.Extensions.XRMarkerDatabaseEntry

Represents an entry in an XRMarkerDatabase with the specialized information that can be converted into a marker XRReferenceImage, then used at ARTrackedImageManager.referenceLibrary for runtime configuration.

Google.XR.Extensions.XrRecommendedSettings

Contains the recommended settings for the app.

Interfaces

Google.XR.Extensions.IXRSpatialSdk

The interface for OpenXRFeature to define XR Spatial SDK requirement.

Enumerations

AndroidXRPermission

 AndroidXRPermission

Permissions required by Android XR tracking services.

Properties
BodyTracking

Permission to enable body tracking.

EyeTrackingCoarse

Permission to enable coarse eye tracking.

EyeTrackingFine

Permission to enable eye gaze interaction and fine eye tracking.

FaceTracking

Permission to enable face tracking.

HandTracking

Permission to enable hand tracking.

SceneUnderstandingCoarse

Permission to enable coarse scene understanding features that relies on motion tracking, ToF sensor, and the VST RGB-left cameras.

SceneUnderstandingFine

Permission to enable fine scene understanding features that relies on motion tracking, such as depth texture and scene meshing.

XRBodyJointSet

 XRBodyJointSet

The set of body joints to track by the platform.

Properties
FullBody

The joint set covering the full body.

UpperBody

The joint set covering the upper body.

XRFoveationLevel

 XRFoveationLevel

Enum corresponding to XrFoveationLevelFB.

Properties
High

Corresponds to XR_FOVEATION_LEVEL_HIGH_FB - High foveation (lower periphery visual fidelity, higher performance).

Low

Corresponds to XR_FOVEATION_LEVEL_LOW_FB - Less foveation (higher periphery visual fidelity, lower performance).

Medium

Corresponds to XR_FOVEATION_LEVEL_MEDIUM_FB - Medium foveation (medium periphery visual fidelity, medium performance).

None

Corresponds to XR_FOVEATION_LEVEL_NONE_FB - No foveation.

XRFullBodyJointID

 XRFullBodyJointID

Represents the type of an skeleton joint.

If you wish to convert it to an index, Use XRBodyJointSetUtility.ToIndex(XRFullBodyJointID) on the joint ID.

Properties
BeginMarker

Marks the beginning of joints, or start of an array of data related to them.

Casting this to an integer type will not result in a correct start. Use XRBodyJointSetUtility.ToIndex(XRFullBodyJointID) instead.

Chest

Joint for the chest.

EndMarker

Marks the end of joints, or size of an array of data related to them.

Casting this to an integer type will not result in a correct count. Use XRBodyJointSetUtility.ToIndex(XRFullBodyJointID) instead.

Head

Joint for the head.

Hips

Joint for hips.

Invalid

Invalid ID.

LeftFoot

Joint for the left foot.

LeftHand

Joint for the left hand.

LeftLowerArm

Joint for the left lower arm.

LeftLowerLeg

Joint for the left lower leg.

LeftShoulder

Joint for the left shoulder.

LeftToes

Joint for left toes.

LeftUpperArm

Joint for the left upper arm.

LeftUpperLeg

Joint for the left upper leg.

Neck

Joint for the neck.

Ribs

Joint for ribs.

RightFoot

Joint for the right foot.

RightHand

Joint for the right hand.

RightLowerArm

Joint for the right lower arm.

RightLowerLeg

Joint for the right lower leg.

RightShoulder

Joint for the right shoulder.

RightToes

Joint for right toes.

RightUpperArm

Joint for the right upper arm.

RightUpperLeg

Joint for the right upper leg.

Spine

Joint for the spine.

XRMarkerDictionary

 XRMarkerDictionary

Describes the type of Supported marker dictionaries.

Properties
AprilTag_16H5

The predefined dictionary of AprilTag family 16H5.

AprilTag_25H9

The predefined dictionary of AprilTag family 25H9.

AprilTag_36H10

The predefined dictionary of AprilTag family 36H10.

AprilTag_36H11

The predefined dictionary of AprilTag family 36H11.

ArUco4x4_100

The predefined dictionary in the ArUco module, composed of 100 markers with size of 4x4 bits.

ArUco4x4_1000

The predefined dictionary in the ArUco module, composed of 1000 markers with size of 4x4 bits.

ArUco4x4_250

The predefined dictionary in the ArUco module, composed of 250 markers with size of 4x4 bits.

ArUco4x4_50

The predefined dictionary in the ArUco module, composed of 50 markers with size of 4x4 bits.

ArUco5x5_100

The predefined dictionary in the ArUco module, composed of 100 markers with size of 5x5 bits.

ArUco5x5_1000

The predefined dictionary in the ArUco module, composed of 1000 markers with size of 5x5 bits.

ArUco5x5_250

The predefined dictionary in the ArUco module, composed of 250 markers with size of 5x5 bits.

ArUco5x5_50

The predefined dictionary in the ArUco module, composed of 50 markers with size of 5x5 bits.

ArUco6x6_100

The predefined dictionary in the ArUco module, composed of 100 markers with size of 6x6 bits.

ArUco6x6_1000

The predefined dictionary in the ArUco module, composed of 1000 markers with size of 6x6 bits.

ArUco6x6_250

The predefined dictionary in the ArUco module, composed of 250 markers with size of 6x6 bits.

ArUco6x6_50

The predefined dictionary in the ArUco module, composed of 50 markers with size of 6x6 bits.

ArUco7X7_100

The predefined dictionary in the ArUco module, composed of 100 markers with size of 7x7 bits.

ArUco7X7_1000

The predefined dictionary in the ArUco module, composed of 1000 markers with size of 7x7 bits.

ArUco7X7_250

The predefined dictionary in the ArUco module, composed of 250 markers with size of 7x7 bits.

ArUco7X7_50

The predefined dictionary in the ArUco module, composed of 50 markers with size of 7x7 bits.

XRMeshSemantics

 XRMeshSemantics

An enum representing the vertex semantics of a scene mesh.

Properties
CEILING

Represents a vertex on the ceiling.

FLOOR

Represents a vertex on the floor.

OTHER

Represents a vertex with unknown semantic.

TABLE

Represents a vertex on the table.

WALL

Represents a vertex on the wall.

XRObjectLabel

 XRObjectLabel

Describes the type of object that the system has identified.

Properties
Keyboard

The object is a keyboard.

Laptop

The object is a laptop.

Mouse

The object is a mouse.

Unknown

It was not possible to label the object.

XRPassthroughCameraStates

 XRPassthroughCameraStates

Defines possible passthrough camera states.

Properties
Disabled

The camera has been disabled by an app, the system or the user.

Error

The camera is in an unrecoverable error state.

Initializing

The camera is still coming online and not yet ready to use.

Ready

The camera is ready to use.

XRSceneMeshTrackingState

 XRSceneMeshTrackingState

An enum representing the scene mesh tracking state.

Properties
ERROR

The internal tracker has not received valid measurements for multiple cycles and is in an error state.

INITIALIZING

The internal tracker is not yet ready to provide mesh data.

TRACKING

The internal tracker is actively tracking.

WAITING

The internal tracker is waiting for valid measurements to integrate since the last mesh update.

XRSpatialSdkVersions

 XRSpatialSdkVersions

The XR Spatial API levels to specify in the manifest to filter applications from devices that don't meet its hardware and software feature requirements.

Check individual OpenXRFeature for their minimal required levels.

Properties
XRSpatialApiLevel1

XR Spatial API level 1, the first Android XR release.

XRSpatialApiLevel3

XR Spatial API level 3, Android XR OTA 1.

XRSpatialApiLevelAuto

Uses the highest supported API level that currently available.

XRUpperBodyJointID

 XRUpperBodyJointID

Represents the type of an skeleton joint.

If you wish to convert it to an index, Use XRBodyJointSetUtility.ToIndex(XRUpperBodyJointID) on the joint ID.

Properties
BeginMarker

Marks the beginning of joints, or start of an array of data related to them.

Casting this to an integer type will not result in a correct start. Use XRBodyJointSetUtility.ToIndex(XRUpperBodyJointID) instead.

Chest

Joint for the chest.

EndMarker

Marks the end of joints, or size of an array of data related to them.

Casting this to an integer type will not result in a correct count. Use XRBodyJointSetUtility.ToIndex(XRUpperBodyJointID) instead.

Head

Joint for the head.

Hips

Joint for hips.

Invalid

Invalid ID.

LeftHand

Joint for the left hand.

LeftLowerArm

Joint for the left lower arm.

LeftShoulder

Joint for the left shoulder.

LeftUpperArm

Joint for the left upper arm.

Neck

Joint for the neck.

Ribs

Joint for ribs.

RightHand

Joint for the right hand.

RightLowerArm

Joint for the right lower arm.

RightShoulder

Joint for the right shoulder.

RightUpperArm

Joint for the right upper arm.

Spine

Joint for the spine.

XrInputModalities

 XrInputModalities

The possible input modality states within the default environment.

Properties
Controller

Controller input modality.

GazeAndGesture

Eyes and/or Hands input modality.

Hands

Hands input modality.

Head

Head input modality.

Mouse

Mouse input modality.

Unknown

Unknown input modality.

Typedefs

ARFaceFeature

UnityEngine.XR.OpenXR.Features.Android.ARFaceFeature ARFaceFeature

ARSessionFeature

UnityEngine.XR.OpenXR.Features.Android.ARSessionFeature ARSessionFeature

TrackableId

UnityEngine.XR.ARSubsystems.TrackableId TrackableId

XrTrackableImageDatabase

System.UInt64 XrTrackableImageDatabase