After ignoring all the user feedback in this New Mesh functions thread Unity went with List<> setters for the various arrays of mesh data. These do work as long as you’re willing to deal with List<> slowness or use reflection to get the backing array and set the size.
Unfortunately they left out the bone weights which are by far the largest memory hog. In my particular case the bone weights themselves generate nearly as much garbage as the rest of the mesh data combined.
The original feedback thread for better mesh data methods is from 2012. ![]()