# GetIndices

> Populates an array with the indices for a given sub-mesh from the MeshData.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

## GetIndices(NativeArray\<ushort>, int, bool)

Populates an array with the indices for a given sub-mesh from the `MeshData`.

```csharp
public void GetIndices(NativeArray<ushort> outIndices, int submesh, bool applyBaseVertex = true)
```

### Parameters

**** (\[NativeArray\<ushort>]\(/engine/6000.7/script-reference/unity/collections/nativearray1)): The destination indices array.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the sub-mesh to get the indices for. See [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md).**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): If true, Unity will apply base vertex offset to the returned indices. The default value is true.

### Remarks

The destination array must have enough elements to hold the index buffer of the given sub-mesh. See [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md) and [SubMeshDescriptor.indexCount](/engine/6000.7/script-reference/unityengine/rendering/submeshdescriptor/indexcount.md). Additional Resources: [Mesh.GetIndices](/engine/6000.7/script-reference/unityengine/mesh/getindices.md), [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md), [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md).

## GetIndices(NativeArray\<ushort>, int, int, bool)

Populates an array with the indices for a given sub-mesh from the `MeshData`.

```csharp
public void GetIndices(NativeArray<ushort> outIndices, int submesh, int meshlod, bool applyBaseVertex = true)
```

### Parameters

**** (\[NativeArray\<ushort>]\(/engine/6000.7/script-reference/unity/collections/nativearray1)): The destination indices array.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the sub-mesh to get the indices for. See [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The Mesh LOD index to get the indices for. Use -1 to get the entire submesh. See also: [lodCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/lodcount.md).**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): If true, Unity will apply base vertex offset to the returned indices. The default value is true.

### Remarks

The destination array must have enough elements to hold the index buffer of the given sub-mesh. See [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md) and [SubMeshDescriptor.indexCount](/engine/6000.7/script-reference/unityengine/rendering/submeshdescriptor/indexcount.md). Additional Resources: [Mesh.GetIndices](/engine/6000.7/script-reference/unityengine/mesh/getindices.md), [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md), [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md).

## GetIndices(NativeArray\<int>, int, bool)

Populates an array with the indices for a given sub-mesh from the `MeshData`.

```csharp
public void GetIndices(NativeArray<int> outIndices, int submesh, bool applyBaseVertex = true)
```

### Parameters

**** (\[NativeArray\<int>]\(/engine/6000.7/script-reference/unity/collections/nativearray1)): The destination indices array.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the sub-mesh to get the indices for. See [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md).**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): If true, Unity will apply base vertex offset to the returned indices. The default value is true.

### Remarks

The destination array must have enough elements to hold the index buffer of the given sub-mesh. See [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md) and [SubMeshDescriptor.indexCount](/engine/6000.7/script-reference/unityengine/rendering/submeshdescriptor/indexcount.md). Additional Resources: [Mesh.GetIndices](/engine/6000.7/script-reference/unityengine/mesh/getindices.md), [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md), [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md).

## GetIndices(NativeArray\<int>, int, int, bool)

Populates an array with the indices for a given sub-mesh from the `MeshData`.

```csharp
public void GetIndices(NativeArray<int> outIndices, int submesh, int meshlod, bool applyBaseVertex = true)
```

### Parameters

**** (\[NativeArray\<int>]\(/engine/6000.7/script-reference/unity/collections/nativearray1)): The destination indices array.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The index of the sub-mesh to get the indices for. See [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md).**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): The Mesh LOD index to get the indices for. Use -1 to get the entire submesh. See also: [lodCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/lodcount.md).**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): If true, Unity will apply base vertex offset to the returned indices. The default value is true.

### Remarks

The destination array must have enough elements to hold the index buffer of the given sub-mesh. See [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md) and [SubMeshDescriptor.indexCount](/engine/6000.7/script-reference/unityengine/rendering/submeshdescriptor/indexcount.md). Additional Resources: [Mesh.GetIndices](/engine/6000.7/script-reference/unityengine/mesh/getindices.md), [subMeshCount](/engine/6000.7/script-reference/unityengine/mesh/meshdata/submeshcount.md), [GetSubMesh](/engine/6000.7/script-reference/unityengine/mesh/meshdata/getsubmesh.md).
