---
title: ARSCNFaceGeometry
framework: arkit
role: symbol
role_heading: Class
path: arkit/arscnfacegeometry
---

# ARSCNFaceGeometry

A SceneKit representation of face topology for use with face information that an AR session provides.

## Declaration

```swift
class ARSCNFaceGeometry
```

## Overview

Overview This class is a subclass of SCNGeometry that wraps the mesh data provided by the ARFaceGeometry class. You can use ARSCNFaceGeometry to quickly and easily visualize face topology and facial expressions provided by ARKit in a SceneKit view. important: ARSCNFaceGeometry is available only in SceneKit views or renderers that use Metal. This class is not supported for OpenGL-based SceneKit rendering. Face mesh topology is constant for the lifetime of an ARSCNFaceGeometry object. That is, the geometry’s single SCNGeometryElement object always describes the same arrangement of vertices, and the texcoord geometry source always maps the same vertices to the same texture coordinates. When you modify the geometry with the update(from:) method, only the contents of the vertex geometry source change, indicating the difference in vertex positions as ARKit adapts the mesh to the shape and expression of the user’s face.

## Topics

### Creating a Geometry

- [init(device:)](arkit/arscnfacegeometry/init(device:).md)
- [init(device:fillMesh:)](arkit/arscnfacegeometry/init(device:fillmesh:).md)

### Updating the Geometry

- [update(from:)](arkit/arscnfacegeometry/update(from:).md)

### Initializers

- [init()](arkit/arscnfacegeometry/init().md)

## Relationships

### Inherits From

- [SCNGeometry](scenekit/scngeometry.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [SCNAnimatable](scenekit/scnanimatable.md)
- [SCNBoundingVolume](scenekit/scnboundingvolume.md)
- [SCNShadable](scenekit/scnshadable.md)

## See Also

### Face Data

- [Tracking and visualizing faces](arkit/tracking-and-visualizing-faces.md)
- [Combining user face-tracking and world tracking](arkit/combining-user-face-tracking-and-world-tracking.md)
- [ARFaceGeometry](arkit/arfacegeometry.md)
