better framebuffer upload