make each OutputSurface use own framebuffer object