【发布时间】:2021-10-05 23:27:12
【问题描述】:
如何在 Direct3D11 中将更新的托管 2D 纹理预加载到 GPU 内存?
在 Direct3D9 中,我调用了 IDirect3DBaseTexture9::PreLoad 以保证纹理准备好进行渲染。
【问题讨论】:
标签: directx texture-mapping direct3d11
如何在 Direct3D11 中将更新的托管 2D 纹理预加载到 GPU 内存?
在 Direct3D9 中,我调用了 IDirect3DBaseTexture9::PreLoad 以保证纹理准备好进行渲染。
【问题讨论】:
标签: directx texture-mapping direct3d11
Direct3D9Ex 和 Direct3D 10 到 DirectX 12 没有 D3DPOOL_MANAGED 的概念。这是因为这些版本的 Direct3D 没有 Direct3D 9 所具有的“丢失设备”。他们只会在您的游戏/应用程序运行时 GPU 崩溃或更新驱动程序时发生“设备移除”。见Microsoft Docs。
从 Windows Vista 开始,显存由操作系统管理。纹理被分页进出显存,并由系统内存自动支持。您可以使用SetEvictionPriority 方法提供提示。
【讨论】: