Version: 2020.2
LanguageEnglish
  • C#

Mesh.SetUVs

Suggest a change

Success!

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.

Close

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.

Close

Cancel

Switch to Manual
public void SetUVs(int channel, Vector2[] uvs);
public void SetUVs(int channel, Vector3[] uvs);
public void SetUVs(int channel, Vector4[] uvs);
public void SetUVs(int channel, List<Vector2> uvs);
public void SetUVs(int channel, List<Vector3> uvs);
public void SetUVs(int channel, List<Vector4> uvs);
public void SetUVs(int channel, NativeArray<T> uvs);

Parameters

channel The UV channel, in [0..7] range. Indices start at 0, which corresponds to uv. Note that 1 corresponds to uv2.
uvs UVs to set for the given index.

Description

Sets the UVs of the Mesh.

Sets the mesh UVs (texture coordinates) as a List of either Vector2, Vector3, or Vector4. 2D (Vector2) texture coordinates are the most common case, but it is possible to use 3D or 4D texture coordinates too. This is most often used for special effect data in shaders.

See Also: uv, GetUVs.


public void SetUVs(int channel, Vector2[] uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, Vector3[] uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, Vector4[] uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, List<Vector2> uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, List<Vector3> uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, List<Vector4> uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);
public void SetUVs(int channel, NativeArray<T> uvs, int start, int length, Rendering.MeshUpdateFlags flags = MeshUpdateFlags.Default);

Parameters

channel The UV channel, in [0..7] range.
uvs UVs to set for the given index.
start Index of the first element to take from the input array.
length Number of elements to take from the input array.
flags Flags controlling the function behavior, see MeshUpdateFlags.

Description

Sets the UVs of the Mesh, using a part of the input array.

This method behaves as if you called SetUVs 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.