The documentation is silent on this one. I mean to use it for a procedural map, but more often than not, I get nothing rendering at all with it.
The plural 'set_polygons' method is actually the indices using PoolIntArray and should really be named to set_indices or something less confusing. The singular 'set_polygon' is where the actual points are set using the PoolVector2Array which can be shared by multiple indices.