The map generator (GridLevelMaker) generates a map using a grid. This grid is used to create blocks. Blocks are made of 4 polys (maybe 6 if they have a floor or a ceiling, but they won't be visible, so why?).
If a poly is not touching the floor or the ceiling, it may be outside of the map, or the user may be just not using floor and ceilings.
Add an option to the map generator so polys that will not be expected to be seen in normal play will be removed.
This will speed up the rendering and the collision detection. Of course, the grid must be correctly designed so that extra polys are not inserted into the map. No floor should be put under a block.
Let's call it "-optimize". It won't be enable by default. This feature will add complexity to the map generator.