Just some minor corrections:

  • The computation only increases as the square of the number of polygons in the scene in general.
  • There are solutions which don't use a z buffer based on splitting polygons into pieces which do not have the same overlap issues; then rendering them.