Version: 2018.4
  • C#


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



Switch to Manual
public void GetIndices(List<int> indices, int submesh);
public int[] GetIndices(int submesh);


indicesA list of indices to populate.
submeshThe sub-mesh index. See subMeshCount.
applyBaseVertexTrue (default value) will apply base vertex offset to returned indices.


Fetches the index list for the specified sub-mesh.

Each integer in the returned list is a vertex index, which is used as an offset into the Mesh's vertex arrays. See vertices and GetVertices. The layout of the indices depends on the MeshTopology of the sub-mesh. For example, a triangular mesh will return indices in multiples of three.

A sub-mesh represents a list of triangles (or indices with a different MeshTopology) that are rendered using a single Material. When the Mesh is used with a Renderer that has multiple materials, you should ensure that there is one sub-mesh per Material.

Call the method overload with a List<int> parameter if you control the life cycle of the index buffer and wish to avoid allocation of a new array with every access.

See Also: subMeshCount, GetTopology, MeshTopology enum.