Fix framebuffer_copy_to_ram function.

GetRenderTargetData function requires the target buffer size to be the
same size as the backbuffer.
This commit is contained in:
aignacio_sf 2005-12-14 19:55:04 +00:00
parent abd1a41291
commit d149ca28bb

View File

@ -1569,9 +1569,15 @@ framebuffer_copy_to_ram(Texture *tex, int z, const DisplayRegion *dr, const Rend
// need to copy it to a temporary surface of the appropriate type // need to copy it to a temporary surface of the appropriate type
// first. // first.
D3DPOOL pool; D3DPOOL pool;
D3DSURFACE_DESC surface_description;
backbuffer -> GetDesc (&surface_description);
pool = D3DPOOL_SYSTEMMEM; pool = D3DPOOL_SYSTEMMEM;
hr = _d3d_device->CreateOffscreenPlainSurface(w, h, _screen->_display_mode.Format, hr = _d3d_device->CreateOffscreenPlainSurface(
surface_description.Width,
surface_description.Height,
surface_description.Format,
pool, pool,
&temp_surface, &temp_surface,
NULL); NULL);