On Fri, Jun 26, 2015 at 2:32 AM, Stefan Dösinger <stefandoesinger@gmail.com> wrote:
Minor issue: I don't think there's a reason to destroy and recreate the surface.
The other way afaik is to QI surface version >= 3 and then call SetSurfaceDesc. This seemed easier to do so. Is there some other way?

> +    IDirectDrawSurface_Release(d3drm_ds);
> +    IDirectDrawSurface_Release(d3drm_surface);
> +    IDirectDrawSurface_Release(ds);
What happens to the depth buffer here? Does it remain attached?
 
At this point (after releasing ds) the refcounts of both ds and render target (i.e. surface) become 1.