DirectX 11 错误等同于 DirectX 9
DirectX 11 errors equivalent to DirectX 9
我需要一个参考来查找 DirectX 9 实现中使用的 DirectX 11 的等效错误代码,如下所示:
D3DERR_INVALIDDEVICE
D3DERR_DRIVERINVALIDCALL
D3DERR_TOOMANYOPERATIONS
D3DERR_DEVICELOST
D3DERR_DEVICENOTRESET
D3DERR_NOTAVAILABLE
我发现 winerror.h 包含所有 DXGI 错误代码,但在 DiretcX 9 中找不到上述错误的等效代码。
请帮助我查找参考或 wiki 以找到等效的错误代码。
基于 DXGI 的 Direct3D 版本没有 'lost device' 方案,只有 TDR and device removed,因此 D3DERR_DEVICELOST
、D3DERR_DEVICENOTRESET
、D3DERR_DRIVERINTERNALERROR
和 D3DERR_NOTAVAILABLE
Direct3D 10 或更高版本永远不会发生这种情况。
如 Microsoft Docs 中所述,您永远不会得到 D3DERR_DRIVERINVALIDCALL
。
D3DERR_TOOMANYOPERATIONS
、D3DERR_CONFLICTINGRENDERSTATE
、D3DERR_CONFLICTINGTEXTUREFILTER
等适用于 Direct3D 10 或更高版本不存在的旧版固定功能管道。
一些较旧的错误,如 D3DERR_UNSUPPORTEDALPHAARG
、D3DERR_UNSUPPORTEDALPHAOPERATION
等,与旧的遗留问题 "caps bits" 有关,这不是 Direct3D 10 或更高版本的管理方式。相反,它使用 Direct3D hardware feature levels.
在 Direct3D9 会 return D3DERR_INVALIDDEVICE
的情况下,您现在可能会 E_INVALIDARG
。
You may want to look at this blog post
我需要一个参考来查找 DirectX 9 实现中使用的 DirectX 11 的等效错误代码,如下所示:
D3DERR_INVALIDDEVICE
D3DERR_DRIVERINVALIDCALL
D3DERR_TOOMANYOPERATIONS
D3DERR_DEVICELOST
D3DERR_DEVICENOTRESET
D3DERR_NOTAVAILABLE
我发现 winerror.h 包含所有 DXGI 错误代码,但在 DiretcX 9 中找不到上述错误的等效代码。 请帮助我查找参考或 wiki 以找到等效的错误代码。
基于 DXGI 的 Direct3D 版本没有 'lost device' 方案,只有 TDR and device removed,因此 D3DERR_DEVICELOST
、D3DERR_DEVICENOTRESET
、D3DERR_DRIVERINTERNALERROR
和 D3DERR_NOTAVAILABLE
Direct3D 10 或更高版本永远不会发生这种情况。
如 Microsoft Docs 中所述,您永远不会得到 D3DERR_DRIVERINVALIDCALL
。
D3DERR_TOOMANYOPERATIONS
、D3DERR_CONFLICTINGRENDERSTATE
、D3DERR_CONFLICTINGTEXTUREFILTER
等适用于 Direct3D 10 或更高版本不存在的旧版固定功能管道。
一些较旧的错误,如 D3DERR_UNSUPPORTEDALPHAARG
、D3DERR_UNSUPPORTEDALPHAOPERATION
等,与旧的遗留问题 "caps bits" 有关,这不是 Direct3D 10 或更高版本的管理方式。相反,它使用 Direct3D hardware feature levels.
在 Direct3D9 会 return D3DERR_INVALIDDEVICE
的情况下,您现在可能会 E_INVALIDARG
。
You may want to look at this blog post