public void Write(BinaryWriter writer, bool bigEndain)
 {
     if (bigEndain)
     {
         writer.Write(CompoundVertex.InverseBytes(x));
         writer.Write(CompoundVertex.InverseBytes(y));
         writer.Write(CompoundVertex.InverseBytes(z));
     }
     else
     {
         writer.Write(x);
         writer.Write(y);
         writer.Write(z);
     }
 }
 public void WriteTransforms(BinaryWriter writer, bool bigEndain)
 {
     for (var i = 0; i < Meshes.Count; i++)
     {
         var mesh = Meshes[i];
         if (bigEndain)
         {
             writer.Write(CompoundVertex.InverseBytes(mesh.X));
             writer.Write(CompoundVertex.InverseBytes(mesh.Y));
             writer.Write(CompoundVertex.InverseBytes(mesh.Z));
         }
         else
         {
             writer.Write(mesh.X);
             writer.Write(mesh.Y);
             writer.Write(mesh.Z);
         }
     }
 }