Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


MeshTopology

Specifies how the indices in a mesh's index buffer are used to construct geometry.
Read time 1 minuteLast updated 5 days ago

Definition

  • Type: Enum
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule
public enum MeshTopology

Remarks

Depending on the topology type, the combination of indices and vertices form shapes such as triangles, quads, lines, or points.
The most commonly used topology is MeshTopology.Triangles, as most hardware is optimized to render triangles efficiently. In meshes with multiple sub-meshes, the topology can be individually set for each sub-mesh.
This enum is commonly used in scripts to define geometry or create procedural meshes.
// This example demonstrates how to create a mesh with two sub-meshes, each using a distinct topology.Mesh mesh = new Mesh();mesh.vertices = new Vector3[]{ new Vector3(0, 0, 0), new Vector3(1, 0, 0), new Vector3(0, 1, 0), new Vector3(1, 1, 0),};mesh.subMeshCount = 2;mesh.SetIndices(new int[] { 0, 2, 1 }, MeshTopology.Triangles, 1);mesh.SetIndices(new int[] { 0, 2, 3, 1, 0 }, MeshTopology.LineStrip, 0);mesh.RecalculateNormals();
Additional Resources: Mesh, SubMeshDescriptor, Mesh.SetIndices.

Fields

Value

Description

LinesConnects pairs of indices to form individual line segments.
LineStripConnects indices consecutively to form a single continuous line.
PointsInterprets indices as individual points without forming connected geometry.
QuadsConnects indices in groups of four to form quadrilateral faces.
TrianglesConnects indices in groups of three to form triangular faces.