The benefit of using MeshData is no memcopy when the job is complete, the mesh is populated by pointer magic.
The drawback is that you need to set the vertex and triangle count before you schedule the job.
Although my poly count is defined within the job I still use MeshData, setting the tri and vertex count at its maximum possible number, internally I use NativeList which is then converted to the triangle and vertex nativearrays of the MeshData output.
I’m wondering if that makes sense or if I’m producing some garbage mesh with all these empty indices and vertices?