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

Mesh.Clear

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

切换到手册

声明

public void Clear(bool keepVertexLayout = true);

参数

keepVertexLayout 如果要保留现有的网格数据布局,则为 true。

描述

清除所有顶点数据和所有三角形索引。

在重建 三角形 数组之前,应调用此函数。

// Convert any GameObject into a single triangle

using UnityEngine;

public class meshClear : MonoBehaviour { private bool once = false;

void Update() { if (Time.time > 2.0f) { convertMesh(); } }

void convertMesh() { if (once) return;

Mesh mesh = GetComponent<MeshFilter>().mesh;

// Clears all the data that the mesh currently has mesh.Clear();

// create 3 vertices for the triangle 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};

once = true; } }

此函数的默认行为会保留现有的顶点布局:例如,如果网格具有切线向量和顶点颜色,那么在您填写新的顶点数据后,切线和颜色将成为网格数据的一部分。如果您想完全清除网格并从空顶点布局开始,请为 keepVertexLayout 参数传递 false。或者,将空数组分配给任何网格组件也会将其从顶点布局中删除。