首页
社区
课程
招聘
[讨论]关于D3D HOOK保存图片的问题..
发表于: 2012-8-9 17:19 8993

[讨论]关于D3D HOOK保存图片的问题..

2012-8-9 17:19
8993
hook了 d3d中的 Present 函数后,该如何才能将画面保存为图片?

这个缓冲区指针该如何获取??

求解....

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 7
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
解决了,后台Dx截图..

        HRESULT   hr;
        //   get   display   dimensions
        D3DDISPLAYMODE   mode;
        if   (FAILED(hr=pDev-> GetDisplayMode(0,&mode))) return   hr;
       
        //   create   the   image   surface   to   store   the   front   buffer   image
        LPDIRECT3DSURFACE9   surf;
        if   (FAILED(hr=pDev->CreateOffscreenPlainSurface(mode.Width,mode.Height,D3DFMT_A8R8G8B8,D3DPOOL_SYSTEMMEM,&surf,NULL)))
                return   hr;
       
        //   第一个参数为0表示获取后台数据,也正是我想要的. -1 表示获取的是前台的数据..
        if   (FAILED(hr=pDev->GetBackBuffer(0,0,D3DBACKBUFFER_TYPE_FORCE_DWORD,&surf)))   {
                 
                surf-> Release();
                return   hr;
        }
       
        //   write   the   entire   surface   to   the   requested   file
        hr=D3DXSaveSurfaceToFile(fileName,D3DXIFF_JPG,surf,NULL,NULL);
       
        //   release   the   image   surface
        surf-> Release();
       
        //   return   status   of   save   operation   to   caller
        return   hr;

给需要的朋友吧... 保存图片的..
2012-8-9 18:29
0
雪    币: 297
活跃值: (120)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
谢谢,您的代码,对我帮助很大,还有点问题,想请教您一下
2012-10-4 20:35
0
雪    币: 389
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
呵呵,好东西
2012-10-5 23:47
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
d3d10如何呢??
2013-3-12 15:52
0
游客
登录 | 注册 方可回帖
返回
//