示例#1
0
    private void _removeSmallAreas(TerrainData data)
    {
        Area[] areas = new Area[data.GetAreaCount()];

        for (int i = 0; i < data.GetAreaCount(); i++)
        {
            areas[i] = data.GetArea(i);
        }

        IEnumerable<Section> removedSections = areas.OfType<Section>().OrderByDescending(section => section.GetPointCount()).Skip(1);
        foreach (Section section in removedSections)
        {
            section.Obliterate();
        }
    }