I’m working on a project that needs to create single triangle meshes where each vertex value is determined at run time by the user. The instance of this triangle needs to maintain its world position as well as the three vertices (modifying this post creation will change affect the mesh) that form the mesh. Using tutorials I’ve come up with the code below.
The problem with this is that it begins to lag once I generate 2-3 instances of it. Does anybody know what’s causing this slowdown? Also, as an alternative would it be possible to have a single triangle prefab and manipulate the individual vertices on the mesh without it affecting all other instances?
MeshFilter meshFilter = GetComponent<MeshFilter>();
if(meshFilter == null)
{
Debug.LogError("MeshFilter not found");
return;
}
Mesh mesh = meshFilter.sharedMesh;
if(mesh == null)
{
meshFilter.mesh = new Mesh();
mesh = meshFilter.sharedMesh;
}
mesh.Clear ();
mesh.vertices = new Vector3[]{a,b,c};
mesh.triangles = new int[]{0,1,2};
mesh.RecalculateNormals();
mesh.RecalculateBounds();
mesh.Optimize();