Am 11.12.2009 um 15:47 schrieb Henri Verbeet:
It's really not that hard, you just call surface_is_offscreen() on the target. Arguably swapchain_init() shouldn't be screwing around with context creation in the first place, but that's really a separate issue, unless you're volunteering to clean that up first.
By the time we create the context the swapchain and surfaces aren't fully constructed. However, we luckily call SetContainer on the initial surface before we call create_context, so it should work for now.
(Incidentally, we create the context with the front buffer as target, so context_acquire with the back buffer as target should set context->render_offscreen correctly anyway. For some reason though it doesn't (Or did not, when I wrote the render-to-fbo code. Or maybe that was after a Reset() call)