我正在使用以下代码将D3D表面复制回系统内存,但是当调用LockRect操作时性能不好,它花费了很多时间来完成这个功能。有没有办法改善它?提前谢谢。
以下是示例代码。
D3DDev-> GetRenderTargetData(renderTarget,offscreenSurface);
//锁定曲面以读取像素
offscreenSurface-> LockRect(& lr,& rect,D3DLOCK_READONLY);
答案 0 :(得分:0)
什么是D3D版本? 您可以使用HDC支持创建渲染目标,获取它的表面并在之后使用surface->GetHDC()。我使用这个技巧而不是'LockRect',它为捕获D3D数据提供了可接受的性能,以便与常规GDI或I / O一起使用。