# XRMultimodalFaceFeature

This feature exposes multimodal face tracking capabilities provided by `XR_ANDROID_face_tracking_data_source` extension.

It's a supplement to **Unity OpenXR Android XR** 's **Android XR: AR Face** feature which integrates XRFaceSubsystem and exposes current tracking modality via ARFaceManagerExtensions.TryGetFaceTrackerMode(ARFaceManager, out XRFaceTrackerMode).

If this feature is not enabled, ARFace will default to image-only face tracking, which may not be supported on all devices.

## Summary

### Inheritance

Inherits from: `OpenXRFeature`

| ### Public attributes ||
|---|---|
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#extensionstrings = "XR_ANDROID_face_tracking_data_source"` | `const string` The required OpenXR extension. |
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#featureid = "com.google.xr.extensions.face_tracking_data_source"` | `const string` The feature ID string. |
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#requestedfacetrackingmode => _requestedFaceTrackingMode` | `https://developer.android.com/develop/xr/unity/reference/namespace/Google/XR/Extensions#xrfacetrackermode` Gets the requested face tracking modality for the provider to try to use. |
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#uiname = "Android XR (Extensions): Multimodal Face"` | `const string` The UI name shows on the XR Plug-in Management panel, help users to understand validation errors and expected fixes. |

| ### Public static attributes ||
|---|---|
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#isextensionenabled => _extensionEnabled` | `bool` Gets if the required OpenXR extension is enabled. |
| `https://developer.android.com/develop/xr/unity/reference/class/Google/XR/Extensions/XRMultimodalFaceFeature#requiredpermission = AndroidXRPermission.RecordAudio` | `readonly https://developer.android.com/develop/xr/unity/reference/namespace/Google/XR/Extensions#androidxrpermission` Runtime permissions required to enable extra face tracking modalities. |

## Public attributes

### ExtensionStrings

```c#
const string ExtensionStrings = "XR_ANDROID_face_tracking_data_source"
```
The required OpenXR extension.

### FeatureId

```c#
const string FeatureId = "com.google.xr.extensions.face_tracking_data_source"
```
The feature ID string.

### RequestedFaceTrackingMode

```c#
XRFaceTrackerMode RequestedFaceTrackingMode => _requestedFaceTrackingMode
```
Gets the requested face tracking modality for the provider to try to use.

If not supported, the provider will fall back to use the supported modalities. This can only be set in project settings before runtime.

### UiName

```c#
const string UiName = "Android XR (Extensions): Multimodal Face"
```
The UI name shows on the XR Plug-in Management panel, help users to understand validation errors and expected fixes.

## Public static attributes

### IsExtensionEnabled

```c#
bool IsExtensionEnabled => _extensionEnabled
```
Gets if the required OpenXR extension is enabled.

### RequiredPermission

```c#
readonly AndroidXRPermission RequiredPermission =
            AndroidXRPermission.RecordAudio
```
Runtime permissions required to enable extra face tracking modalities.