版本: Unity 6 (6000.0)
语言英语
  • C#

Mesh.triangles

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们不能接受所有提交的内容,但我们会阅读用户提出的每项更改建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册
public int[] triangles;

描述

包含网格中所有三角形的数组。

该数组是三角形列表,其中包含指向顶点数组的索引。三角形数组的大小必须始终是 3 的倍数。只需索引到相同的顶点即可共享顶点。如果网格包含多个子网格(材质),则三角形列表将包含属于所有子网格的所有三角形。当您使用此函数分配三角形数组时,subMeshCount 将设置为 1。如果您想要多个子网格,请使用 subMeshCountSetTriangles

建议在分配顶点数组之后分配三角形数组,以避免超出范围错误。

// Builds a Mesh containing a single triangle with uvs.
// Create arrays of vertices, uvs and triangles, and copy them into the mesh.

using UnityEngine;

public class meshTriangles : MonoBehaviour { // Use this for initialization void Start() { gameObject.AddComponent<MeshFilter>(); gameObject.AddComponent<MeshRenderer>(); Mesh mesh = GetComponent<MeshFilter>().mesh;

mesh.Clear();

// make changes to the Mesh by creating arrays which contain the new values mesh.vertices = new Vector3[] {new Vector3(0, 0, 0), new Vector3(0, 1, 0), new Vector3(1, 1, 0)}; mesh.uv = new Vector2[] {new Vector2(0, 0), new Vector2(0, 1), new Vector2(1, 1)}; mesh.triangles = new int[] {0, 1, 2}; } }

其他资源:SetTrianglesSetIndices