Version: 2022.2
public void Clear (bool keepVertexLayout= true);

参数

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

描述

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

应在重新构建 triangles 数组之前调用此函数。

// 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。 或者,向任何网格组件分配空数组也会从顶点布局中 将其删除。