Class ARPlaneMeshGenerators
Generator functions for ARPlane mesh geometery.
Namespace: UnityEngine.XR.ARFoundation
Syntax
public static class ARPlaneMeshGenerators
Remarks
These static class provides ways to generate different parts of plane geometry, such as vertices, indices, normals and UVs. You can use these functions to build an ARPlane Mesh object.
Methods
GenerateIndices(List<Int32>, List<Vector3>, Single)
Generates a List
of indices from the given parameters, forming a triangle fan.
The convexPolygon
is assumed to be convex.
Declaration
public static bool GenerateIndices(List<int> indices, List<Vector3> convexPolygon, float areaTolerance = 1E-06F)
Parameters
Type | Name | Description |
---|---|---|
List<Int32> | indices | The |
List<Vector3> | convexPolygon | The vertices of the plane's boundary, in plane-space. |
Single | areaTolerance | If any triangle in the generated mesh is less than this, then the entire mesh is ignored. |
Returns
Type | Description |
---|---|
Boolean |
|
Remarks
convexPolygon
is not checked for its convexness. Concave polygons will produce incorrect results.
GenerateMesh(Mesh, Pose, NativeArray<Vector2>, Single)
Generates a Mesh
from the given parameters. The convexPolygon
is assumed to be convex.
Declaration
public static bool GenerateMesh(Mesh mesh, Pose pose, NativeArray<Vector2> convexPolygon, float areaTolerance = 1E-06F)
Parameters
Type | Name | Description |
---|---|---|
Mesh | mesh | The |
Pose | pose | The session-space pose of the mesh. |
NativeArray<Vector2> | convexPolygon | The vertices of the plane's boundary, in plane-space. |
Single | areaTolerance | If any triangle in the generated mesh is less than this, then the entire mesh is ignored. This handles an edge case which prevents degenerate or very small triangles. Units are meters-squared. |
Returns
Type | Description |
---|---|
Boolean |
|
Remarks
convexPolygon
is not checked for its convexness. Concave polygons will produce incorrect results.
GenerateUvs(List<Vector2>, Pose, List<Vector3>)
Generates a List
of UVs from the given parameters.
Declaration
public static void GenerateUvs(List<Vector2> Uvs, Pose pose, List<Vector3> vertices)
Parameters
Type | Name | Description |
---|---|---|
List<Vector2> | Uvs | The |
Pose | pose | The session-space pose of the mesh. |
List<Vector3> | vertices | The vertices of the plane's boundary, in plane-space. |