void Start()
        {
            var filter = GetComponent <MeshFilter>();
            var source = filter.mesh;
            var mesh   = SubdivisionSurface.Subdivide(SubdivisionSurface.Weld(source, float.Epsilon, source.bounds.size.x), details, weld);

            filter.sharedMesh = mesh;
        }
        public static Model Subdivide(Mesh source, int details = 1)
        {
            var model   = new Model(source);
            var divider = new SubdivisionSurface();

            for (int i = 0; i < details; i++)
            {
                model = divider.Divide(model);
            }

            return(model);
        }