On Sunday 27 March 2011 06:26:47 Chris Robinson wrote:
After some testing and talking with Henri, it seems a number of checks aren't needed if FBO blits are available, particularly the swapchain/active render target checks. The attached patch makes BltOverride check for FBO blits earlier, which helps it catch more cases where blits can be accelerated. It provides a significant improvement with the aforementioned programs.
BltOverride is a horrible mess, and I'm afraid the patch doesn't make it any better. A long time ago Roderick started a cleanup to give the blit selection routine a more structured approach, but he never finished the work. Unfortunately a proper fix is not a weekend task :-(
Besides simple unconverted blits we should also be able to do converted blits via FBOs + shader draws, e.g. to blit a YUV surface to an offscreen render target. This is needed for HW accelerated video playback with quicktime. And I am sure there are many other things that need to be considered.