This generally detects overlap more accurately using a dirty rectangles approach. Also detects render to self much more accurately, including with depth.