The framebuffer that you are filling out is still at native resolution, but while computing that frame buffer you can do many of the steps at reduced resolution. For example, instead of evaluating the pixel shader code for every pixel, it could evaluate once for a block of four pixels in the reduced resolution region and use the result for all four.