D3D 纹理转换到DC
菜鸟二号 2011-05-28 01:53:23 现在用HBTMAP转成Texture可以做到,可是反过来,弄了好久,都失败。。在线等大家的帮助,谢谢..
首先创建一个Texture,从该纹理中Texture->GetSurfaceLevel(0,&surface);
然后将内容渲染到这个纹理可以做到,可是这时在surface->GetDC,失败.... 这个是什么原因呢?是不是纹理创建的有问题?
其次,创建一个CreateOffscreenPlainSurface surface2。
surface2->GetDC就能成功,但是不知道如何把内容渲染到这个表面.....
假如第一步渲染到了纹理Texture上了,Device->StretchRect(surface ,0,surface2,0,D3DTEXF_NONE ); 就是把纹理上的内容copy到surface2,这时没任何效果,又是为何...
如果Device->StretchRect(surface2 ,0,surface,0,D3DTEXF_NONE );
就是翻过来,surface2的内容复制到surface又成功 ⊙﹏⊙b汗?
再次,渲染到Texture成功了,此时在其表面surface上,LockRect 到LockedRect上,然后想读取数据创建hbitmap,结果,LockedRect.Pitch一直为0,就是不成功,再次纠结了...
其实我就是想把程序渲染的结果放到一个hbitmap or DC上,怎么做呢...
谢谢大家,在线等