Struct XRFaceMesh
Container for mesh data associated with an XRFace. Not all implementations
support all data. Check for existence with NativeArray's IsCreated property.
Namespace: UnityEngine.XR.ARSubsystems
Syntax
public struct XRFaceMesh : IEquatable<XRFaceMesh>, IDisposable
Properties
indices
The triangle indices of the mesh. There are three times as many indices as triangles.
Declaration
public NativeArray<int> indices { get; }
Property Value
| Type | Description |
|---|---|
| NativeArray<Int32> |
normals
Declaration
public NativeArray<Vector3> normals { get; }
Property Value
| Type | Description |
|---|---|
| NativeArray<Vector3> |
uvs
Declaration
public NativeArray<Vector2> uvs { get; }
Property Value
| Type | Description |
|---|---|
| NativeArray<Vector2> |
vertices
Declaration
public NativeArray<Vector3> vertices { get; }
Property Value
| Type | Description |
|---|---|
| NativeArray<Vector3> |
Methods
Dispose()
Disposes of the all four native arrays: vertices, normals, uvs, and indices Checking for creation before calling Dispose.
Declaration
public void Dispose()
Equals(Object)
Tests for equality.
Declaration
public override bool Equals(object obj)
Parameters
| Type | Name | Description |
|---|---|---|
| Object | obj | The |
Returns
| Type | Description |
|---|---|
| Boolean |
|
Overrides
Equals(XRFaceMesh)
Tests for equality.
Declaration
public bool Equals(XRFaceMesh other)
Parameters
| Type | Name | Description |
|---|---|---|
| XRFaceMesh | other | The other XRFaceMesh to compare against. |
Returns
| Type | Description |
|---|---|
| Boolean |
|
GetHashCode()
Generates a hash suitable for use with containers like HashSet and Dictionary.
Declaration
public override int GetHashCode()
Returns
| Type | Description |
|---|---|
| Int32 | A hash code generated from this object's fields. |
Overrides
Resize(Int32, Int32, XRFaceMesh.Attributes, Allocator)
Resize the NativeArrays held by this struct. This method will deallocate
the NativeArrays if they are not needed or if they are not the correct size.
If they are already the correct size, this method does not mutate those NativeArrays.
This facilitate memory reuse when the number of vertices or triangles in the face does
not change frequently.
Declaration
public void Resize(int vertexCount, int triangleCount, XRFaceMesh.Attributes attributes, Allocator allocator)
Parameters
| Type | Name | Description |
|---|---|---|
| Int32 | vertexCount | The number of vertices in the mesh. |
| Int32 | triangleCount | The number of triangles in the mesh. |
| XRFaceMesh.Attributes | attributes | Optional mesh attributes. This affects whether normals and uvs will be (re)allocated or disposed. |
| Allocator | allocator | If a reallocation is required, this allocator will be used. |
ToString()
Generates a string suitable for debugging purposes.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| String | A string representation of this XRFaceMesh. |
Overrides
Operators
Equality(XRFaceMesh, XRFaceMesh)
Tests for equality. Same as Equals(XRFaceMesh).
Declaration
public static bool operator ==(XRFaceMesh lhs, XRFaceMesh rhs)
Parameters
| Type | Name | Description |
|---|---|---|
| XRFaceMesh | lhs | The left-hand side of the comparison. |
| XRFaceMesh | rhs | The right-hand side of the comparison. |
Returns
| Type | Description |
|---|---|
| Boolean |
|
Inequality(XRFaceMesh, XRFaceMesh)
Tests for inequality. Same as !Equals(XRFaceMesh).
Declaration
public static bool operator !=(XRFaceMesh lhs, XRFaceMesh rhs)
Parameters
| Type | Name | Description |
|---|---|---|
| XRFaceMesh | lhs | The left-hand side of the comparison. |
| XRFaceMesh | rhs | The right-hand side of the comparison. |
Returns
| Type | Description |
|---|---|
| Boolean |
|