请教个关于opengl/directx获取显存图像数据的问题(分数多多送完为止)

道亦无名 2017-01-14 04:51:29
请教个关于opengl/directx获取显存图像数据的问题。
1、据说可以这样搞setrendertarget 输出到surface,或者直接lock back buffer了访问。
后面不知道到咋搞了?
2、从前台缓冲区取数据是这样
extern IDirect3DDevice9* g_pd3dDevice;
Void CaptureScreen()
{
IDirect3DSurface9 * pSurface;
g_pd3dDeviceàCreateImageSurface(ScreenWidth,ScreenHeight,
D3DFMT_A8R8G8B8,&pSurface);
g_pd3dDevice->GetFrontBuffer(pSurface);
D3DXSaveSurfaceToFile("Desktop.bmp",D3DXIFF_BMP,pSurface,
NULL,NULL);
pSurface->Release();
}

不知道从后台backbuffer怎么取数据?有没有大神可以交流一下,分享一下经验。GetFrontBuffer是一个比较慢的操作,设计就是如此,所以在效率很关键的程序中应避免使用。
有经验的朋友希望能够传授小弟一点经验如何使用GetBackBuffer和交换链获取显存后台数据的方法或者途径。
...全文
361 点赞 收藏 回复
写回复
回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
相关推荐
发帖
Windows Server
创建于2007-08-02

6633

社区成员

Windows 2016/2012/2008/2003/2000/NT
申请成为版主
帖子事件
创建了帖子
2017-01-14 04:51
社区公告
暂无公告