I suppose you could use a tilemap filled with solid tiles and erase them on overlap. Or you could use the paster plugin, but I don't think that would get saved with the default savestate system. I guess it depends on the art style you're going for and what kind of performance you expect.
Using lots of individual objects definitely wouldn't be efficient, though.