docs.unity3d.com
    Show / Hide Table of Contents

    Class ARPlaneMeshGenerators

    Generator methods for ARPlane mesh geometery.

    Inheritance
    Object
    ARPlaneMeshGenerators
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    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 methods 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 to write results to.

    List<UnityEngine.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

    True if the indices were generated, False if a triangle whose area is less than areaTolerance is found.

    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
    UnityEngine.Mesh mesh

    The Mesh to write results to.

    UnityEngine.Pose pose

    The session-space pose of the mesh.

    Unity.Collections.NativeArray<UnityEngine.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

    True if the mesh was generated, False otherwise. The mesh might fail to generate if it is not a valid polygon (too few vertices) or if it contains degenerate triangles (area smaller than areaTolerance).

    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<UnityEngine.Vector2> Uvs

    The List to write results to.

    UnityEngine.Pose pose

    The session-space pose of the mesh.

    List<UnityEngine.Vector3> vertices

    The vertices of the plane's boundary, in plane-space.

    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023