Why is my mesh getting messed up

I have a plane that I made in Blender and then applied a modifier too that split all the triangles so that none of them share vertices. See first image:

I Exported the file and then imported it into Unity (I tried both .blend and .dae) I then attempted to deform the mesh to check that the disconnection between triangles was maintained and lo, it has been broken. See second image:

Why is this happening and how to I make it stop happening?

For those who would question why I would want to do this in the first place: I’m attempting to do low ploy terrain generation. Mesh deformation is the easy part. But application of flat shading to a dynamic mesh is not. If a mesh is straight imported into Unity one can use the “set smoothing angle” function in the importer to apply flat shading. However, use of the “Mesh.RecalculateNormals” function applies an averaged shading angle to all vertices and there is no programmatic method in Unity for setting the smoothing angle. Thus, I must use a mesh with triangles having no shared vertices.

I am, of course, open to suggestions as to an easier way to accomplish this goal. But I have spent hours Googling the problem to no avail.

EDIT: Links to code and .blend file

Blend File and Deform Code

(Ran out of attachments, and the code formatting was not working. hence the external links)

You had not unwrapped your mesh. It took me a while to figure out :smiley:

Here is a pic of your mesh and deform script running after doing the uv unwrap in Blender :