Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


SetColors

Set the per-vertex colors of the Mesh.
Read time 6 minutesLast updated 4 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

SetColors(List<Color>)

Set the per-vertex colors of the Mesh.
public void SetColors(List<Color> inColors)

Parameters

inColors

Per-vertex colors.

Remarks

Unity internally stores Mesh data in the format matching the data you supply. For example, if you pass a Color32 array Unity will store each color in 4 bytes (low precision, 0..1 range); whereas if you pass a Color array, Unity stores each color in 16 bytes (full 32 bit float per color channel).
If you use a
List
, Unity copies the values. If you change the
List
, the Mesh colors won't change unless you call
Mesh.SetColors
again.
Additional Resources: Mesh.colors, Mesh.colors32 properties.

SetColors(List<Color>, int, int, MeshUpdateFlags)

Sets the per-vertex colors of the Mesh, using a part of the input array.
public void SetColors(List<Color> inColors, int start, int length, MeshUpdateFlags flags)

Parameters

inColors

Per-vertex colors.

start

Index of the first element to take from the input array.

length

Number of elements to take from the input array.

Flags controlling the function behavior, see MeshUpdateFlags.

Remarks

This method behaves as if you called SetColors with an array that is a slice of the whole array, starting at start index and being of a given length. The resulting Mesh has length amount of vertices.

SetColors(Color[])

Set the per-vertex colors of the Mesh.
public void SetColors(Color[] inColors)

Parameters

inColors

Per-vertex colors.

Remarks

Unity internally stores Mesh data in the format matching the data you supply. For example, if you pass a Color32 array Unity will store each color in 4 bytes (low precision, 0..1 range); whereas if you pass a Color array, Unity stores each color in 16 bytes (full 32 bit float per color channel).
If you use a
List
, Unity copies the values. If you change the
List
, the Mesh colors won't change unless you call
Mesh.SetColors
again.
Additional Resources: Mesh.colors, Mesh.colors32 properties.

SetColors(Color[], int, int, MeshUpdateFlags)

Sets the per-vertex colors of the Mesh, using a part of the input array.
public void SetColors(Color[] inColors, int start, int length, MeshUpdateFlags flags)

Parameters

inColors

Per-vertex colors.

start

Index of the first element to take from the input array.

length

Number of elements to take from the input array.

Flags controlling the function behavior, see MeshUpdateFlags.

Remarks

This method behaves as if you called SetColors with an array that is a slice of the whole array, starting at start index and being of a given length. The resulting Mesh has length amount of vertices.

SetColors(List<Color32>)

Set the per-vertex colors of the Mesh.
public void SetColors(List<Color32> inColors)

Parameters

Per-vertex colors.

Remarks

Unity internally stores Mesh data in the format matching the data you supply. For example, if you pass a Color32 array Unity will store each color in 4 bytes (low precision, 0..1 range); whereas if you pass a Color array, Unity stores each color in 16 bytes (full 32 bit float per color channel).
If you use a
List
, Unity copies the values. If you change the
List
, the Mesh colors won't change unless you call
Mesh.SetColors
again.
Additional Resources: Mesh.colors, Mesh.colors32 properties.

SetColors(List<Color32>, int, int, MeshUpdateFlags)

Sets the per-vertex colors of the Mesh, using a part of the input array.
public void SetColors(List<Color32> inColors, int start, int length, MeshUpdateFlags flags)

Parameters

Per-vertex colors.

start

Index of the first element to take from the input array.

length

Number of elements to take from the input array.

Flags controlling the function behavior, see MeshUpdateFlags.

Remarks

This method behaves as if you called SetColors with an array that is a slice of the whole array, starting at start index and being of a given length. The resulting Mesh has length amount of vertices.

SetColors(Color32[])

Set the per-vertex colors of the Mesh.
public void SetColors(Color32[] inColors)

Parameters

inColors

Per-vertex colors.

Remarks

Unity internally stores Mesh data in the format matching the data you supply. For example, if you pass a Color32 array Unity will store each color in 4 bytes (low precision, 0..1 range); whereas if you pass a Color array, Unity stores each color in 16 bytes (full 32 bit float per color channel).
If you use a
List
, Unity copies the values. If you change the
List
, the Mesh colors won't change unless you call
Mesh.SetColors
again.
Additional Resources: Mesh.colors, Mesh.colors32 properties.

SetColors(Color32[], int, int, MeshUpdateFlags)

Sets the per-vertex colors of the Mesh, using a part of the input array.
public void SetColors(Color32[] inColors, int start, int length, MeshUpdateFlags flags)

Parameters

inColors

Per-vertex colors.

start

Index of the first element to take from the input array.

length

Number of elements to take from the input array.

Flags controlling the function behavior, see MeshUpdateFlags.

Remarks

This method behaves as if you called SetColors with an array that is a slice of the whole array, starting at start index and being of a given length. The resulting Mesh has length amount of vertices.

SetColors<T>(NativeArray<T>)

Set the per-vertex colors of the Mesh.
public void SetColors<T>(NativeArray<T> inColors) where T : struct

Parameters

Per-vertex colors.

Remarks

Unity internally stores Mesh data in the format matching the data you supply. For example, if you pass a Color32 array Unity will store each color in 4 bytes (low precision, 0..1 range); whereas if you pass a Color array, Unity stores each color in 16 bytes (full 32 bit float per color channel).
If you use a
List
, Unity copies the values. If you change the
List
, the Mesh colors won't change unless you call
Mesh.SetColors
again.
Additional Resources: Mesh.colors, Mesh.colors32 properties.

SetColors<T>(NativeArray<T>, int, int, MeshUpdateFlags)

Sets the per-vertex colors of the Mesh, using a part of the input array.
public void SetColors<T>(NativeArray<T> inColors, int start, int length, MeshUpdateFlags flags) where T : struct

Parameters

Per-vertex colors.

start

Index of the first element to take from the input array.

length

Number of elements to take from the input array.

Flags controlling the function behavior, see MeshUpdateFlags.

Remarks

This method behaves as if you called SetColors with an array that is a slice of the whole array, starting at start index and being of a given length. The resulting Mesh has length amount of vertices.