Create d3d_device_get_render_target_data
This commit is contained in:
parent
30af756969
commit
d6533bac19
|
@ -391,6 +391,21 @@ void d3d_clear(LPDIRECT3DDEVICE dev,
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool d3d_device_get_render_target_data(LPDIRECT3DDEVICE dev,
|
||||||
|
void *_src, void *_dst)
|
||||||
|
{
|
||||||
|
LPDIRECT3DSURFACE src = (LPDIRECT3DSURFACE)_src;
|
||||||
|
LPDIRECT3DSURFACE dst = (LPDIRECT3DSURFACE)_dst;
|
||||||
|
#if defined(HAVE_D3D9) && !defined(__cplusplus)
|
||||||
|
if (SUCCEEDED(IDirect3DDevice9_GetRenderTargetData(dev, src, dst)))
|
||||||
|
return true;
|
||||||
|
#else
|
||||||
|
if (SUCCEEDED(dev->GetRenderTargetData(src, dst)))
|
||||||
|
return true;
|
||||||
|
#endif
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
bool d3d_device_get_render_target(LPDIRECT3DDEVICE dev,
|
bool d3d_device_get_render_target(LPDIRECT3DDEVICE dev,
|
||||||
unsigned idx, void **data)
|
unsigned idx, void **data)
|
||||||
{
|
{
|
||||||
|
|
|
@ -110,6 +110,9 @@ void d3d_frame_postprocess(void *data);
|
||||||
|
|
||||||
void d3d_surface_free(void *data);
|
void d3d_surface_free(void *data);
|
||||||
|
|
||||||
|
bool d3d_device_get_render_target_data(LPDIRECT3DDEVICE dev,
|
||||||
|
void *_src, void *_dst);
|
||||||
|
|
||||||
bool d3d_device_get_render_target(LPDIRECT3DDEVICE dev,
|
bool d3d_device_get_render_target(LPDIRECT3DDEVICE dev,
|
||||||
unsigned idx, void **data);
|
unsigned idx, void **data);
|
||||||
|
|
||||||
|
|
|
@ -1564,7 +1564,7 @@ static bool d3d9_cg_renderchain_read_viewport(
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (FAILED(d3d->d3d_err = d3dr->GetRenderTargetData(target, dest)))
|
if (!d3d_device_get_render_target_data(d3dr, (void*)target, (void*)dest))
|
||||||
{
|
{
|
||||||
ret = false;
|
ret = false;
|
||||||
goto end;
|
goto end;
|
||||||
|
|
Loading…
Reference in New Issue