void VSectorVisibilityZone::Serialize( VArchive &ar )
{
  // version 6 does not save the connections to neighbor zones to avoid recursion
  // Note: when exporting the mobile replacement version of the terrain (one vmesh for each sector) the connection
  //       between neighbor zones must be serialized, because there is actually no terrain in the mobile exported version
  //       from which the neighbor zone information can be re-consturcted.
#if !defined(_VISION_MOBILE)
  if (ar.IsSaving() && !m_pTerrain->SectorManager().IsTerrainMeshExportInProgress())
    m_pSector->ConnectNeighborZones(false);
#endif

  VisVisibilityZone_cl::Serialize(ar);

  if (!(GetZoneFlags()&VIS_VISIBILITYZONEFLAGS_INFINITEHEIGHTFORASSIGNMENT))
  {
    SetZoneFlags(GetZoneFlags() | VIS_VISIBILITYZONEFLAGS_INFINITEHEIGHTFORASSIGNMENT);
    SetBoundingBox(m_BoundingBox);
  }
}