public void Write(GrnNode meshSecNode)
{
GrnNode meshNode = new GrnNode(meshSecNode, GrnNodeType.Mesh);
meshSecNode.AppendChild(meshNode);
GrnNode meshVertSetSecNode = new GrnNode(meshNode, GrnNodeType.MeshVertexSetSection);
meshNode.AppendChild(meshVertSetSecNode);
GrnNode meshVertSetNode = new GrnNode(meshVertSetSecNode, GrnNodeType.MeshVertexSet);
meshVertSetSecNode.AppendChild(meshVertSetNode);
GrnMeshVerticesNode mVertNode = new GrnMeshVerticesNode(meshVertSetNode);
mVertNode.Vertices = this.Vertices;
meshVertSetNode.AppendChild(mVertNode);
GrnMeshNormalsNode mNormNode = new GrnMeshNormalsNode(meshVertSetNode);
mNormNode.Normals = this.Normals;
meshVertSetNode.AppendChild(mNormNode);
GrnNode meshFieldSecNode = new GrnNode(meshVertSetNode, GrnNodeType.MeshFieldSection);
meshVertSetNode.AppendChild(meshFieldSecNode);
GrnMeshFieldNode mFieldNode = new GrnMeshFieldNode(meshFieldSecNode);
mFieldNode.TextureCoordinates = this.TextureCoordinates;
meshFieldSecNode.AppendChild(mFieldNode);
GrnMeshWeightsNode mWeightNode = new GrnMeshWeightsNode(meshNode);
mWeightNode.VertexWeights = this.VertexWeights;
meshNode.AppendChild(mWeightNode);
GrnMeshTrianglesNode mTriNode = new GrnMeshTrianglesNode(meshNode);
mTriNode.Faces = this.Faces;
meshNode.AppendChild(mTriNode);
GrnDataExtensionReferenceNode mDERefNode = new GrnDataExtensionReferenceNode(meshNode);
mDERefNode.DataExtensionIndex = this.DataExtensionIndex + 1;
meshNode.AppendChild(mDERefNode);
}