将资源从一个D3D11设备复制到另一个设备

CopyResource from one D3D11 device to another

本文关键字:D3D11 复制 另一个 一个 资源      更新时间:2023-10-16

我可以使用ID3D11DeviceContext::CopyResource将内容从D3D11纹理复制到另一个纹理。该方法属于特定设备的直接上下文,因此我无法将纹理从一个设备复制到另一个设备(我已经尝试过了——它像预期的那样爆炸,说

"D3D11 CORRUPTION:ID3D11DeviceContext::CopyResource:第一个参数与设备不匹配。[杂项损坏#13:CORRUPTED_PARAMETER1]"

)。

有没有D3D11内置的方法可以做到这一点,或者我必须通过暂存纹理下载数据并上传到其他设备?

要将资源从一个设备复制到另一个设备,需要使用DXGI共享曲面。请参见Windows图形API之间的曲面共享。

请记住,在一般情况下,这些设备可能没有任何共同的物理内存或硬件。