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

Mesh.vertices

建议修改

成功!

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

关闭

提交失败

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

关闭

取消

切换到手册
public Vector3[] vertices;

描述

返回顶点位置的副本或分配新的顶点位置数组。

通过分配具有不同顶点数量的顶点数组来更改网格中的顶点数量。

如果调整顶点数组的大小,则所有其他顶点属性(法线、颜色、切线、UV)也会自动调整大小。如果在设置顶点时网格未分配任何顶点,则会自动调用 RecalculateBounds

请注意,此方法返回的是局部空间中的顶点,而不是世界空间中的顶点。

using UnityEngine;

public class Example : MonoBehaviour { Mesh mesh; Vector3[] vertices; void Start() { mesh = GetComponent<MeshFilter>().mesh; vertices = mesh.vertices; }

void Update() { for (var i = 0; i < vertices.Length; i++) { vertices[i] += Vector3.up * Time.deltaTime; }

// assign the local vertices array into the vertices array of the Mesh. mesh.vertices = vertices; mesh.RecalculateBounds(); } }

注意:要更改 vertices,务必从 Mesh 中复制顶点。复制并更改 vertices 后,可以将 vertices 重新分配回 Mesh