Since edge smoothing will now be automated and UV will come from world space, plus edges with UV seam can be detected from CPU, mesh could be saved in form of vertices and triangles list only, and reconstructed on object initialisation.
Yesterday in a bus I came up with better way to smooth. Instead of giving each vertex 2 normal vectors, it will have to be 4. One for each edge, one for area around the vertex, and one for the plane itself. Or, the 4th parameter could be weight, instead of packing it with color. Vector values will be as follows: edge vectors will be written in the same positions for adgasent vectors. Vertex normal will have negative power value, and in position as opposing edge. Two edges will have power of 1 so they will quicly fade due to negative value of the opposite one, where the sharp normal in 4th position will be visible.