protected override void Dispose(bool v)
        {
            base.Dispose(v);
            for (var i = 0; i < m_splits.Count; ++i)
            {
                m_PostProcessJobs[i].Complete();
                var split = m_splits[i];
                split.Dispose();
            }

            m_splitSummaries.DisposeIfPossible();
            m_submeshSummaries.DisposeIfPossible();

            m_splitData.DisposeIfPossible();
            m_submeshData.DisposeIfPossible();
        }
            public void Dispose()
            {
                if (disposed)
                {
                    return;
                }

                velocities.DisposeIfPossible();
                zeroVelocities.DisposeIfPossible();
                points.DisposeIfPossible();
                normals.DisposeIfPossible();
                tangents.DisposeIfPossible();
                uv0.DisposeIfPossible();
                uv1.DisposeIfPossible();
                rgba.DisposeIfPossible();
                rgb.DisposeIfPossible();
                if (mesh != null && (mesh.hideFlags & HideFlags.DontSave) != 0)
                {
                    DestroyUnityObject(mesh);
                    mesh = null;
                }

                disposed = true;
            }