Use this method to dispose of the MeshDataArray
struct.
It is important to dispose of a MeshDataArray
struct once you have finished working with it. Modifying a Mesh while a MeshDataArray
struct for that Mesh exists results in memory allocations and data copies. Use Dispose to dispose of the MeshDataArray
struct when you have finished using it, or use the C# using
pattern to do this automatically:
using Unity.Collections; using UnityEngine; public class ExampleScript : MonoBehaviour { void Start() { var mesh = new Mesh(); mesh.vertices = new[] {Vector3.one, Vector3.zero}; using (var dataArray = Mesh.AcquireReadOnlyMeshData(mesh)) { // prints "2" Debug.Log(dataArray[0].vertexCount); } } }
Additional resources: Mesh.AcquireReadOnlyMeshData.