如何在DirectX 11中渲染纹理并将纹理传输到常规内存?

如何在DirectX 11中渲染纹理并将纹理传输到常规内存?,directx,rendering,directx-11,render-to-texture,Directx,Rendering,Directx 11,Render To Texture,我想利用DirectX加速将图像渲染为纹理。 但是我不想在屏幕上显示这个图像,而是想把这个图像作为位图返回到常规内存中,以便对结果进行任何处理。如何将一些纹理转移到常规内存中? 我使用的是DirectX 11。您可以使用具有cpu读取访问权限的单独“暂存”纹理。然后使用CopySubresource()或CopySource()将rendertarget纹理复制到此暂存纹理,并将执行贴图()复制到此暂存纹理 -->您可以找到相同的问题和解决方案。您只需要使用DirectX 11版本而不是10.0

我想利用DirectX加速将图像渲染为纹理。 但是我不想在屏幕上显示这个图像,而是想把这个图像作为位图返回到常规内存中,以便对结果进行任何处理。如何将一些纹理转移到常规内存中? 我使用的是DirectX 11。

您可以使用具有cpu读取访问权限的单独“暂存”纹理。然后使用CopySubresource()或CopySource()将rendertarget纹理复制到此暂存纹理,并将执行贴图()复制到此暂存纹理


-->

您可以找到相同的问题和解决方案。您只需要使用DirectX 11版本而不是10.0版本。。。事实上,我想访问像素。D3DX10SaveTextureToFile()当然是在后台完成的。但是我想知道怎么一个人做。我认为这与资源的映射/取消映射(DX10/DX11)有关,但我找不到任何真正有效的方法!:-(哦,我在上面的评论中看到了这个解决方案……我使用了好几次,它都起作用了。映射/取消映射有什么问题吗?关于如何在DirectX 12中进行映射,有什么建议吗?这里似乎有许多与内存相关的事情发生了变化:(