direct3d11.1 id3d11device1不能使用11.1功能(win7)

时间:2013-10-27 18:19:26

标签: windows-7 direct3d direct3d11

我已经成功创建了d3d11.1设备及其上下文(ID3D11Device1,ID3D11DeviceContext1)

使用文档中描述的方法:

dxhr = D3D11CreateDevice(adapter, D3D_DRIVER_TYPE_UNKNOWN, NULL, dev_flags,
    NULL, 0, D3D11_SDK_VERSION, &dev, &ft_level, &ctx);
ID3D11Device1* dev1;
dxhr = dev->QueryInterface(__uuidof(ID3D11Device1), (void**)&dev1);
dev->Release()
D3D_FEATURE_LEVEL ft_level = dev1->GetFeatureLevel()

d3d11.1对象有效且有效,但我不能使用任何d3d11.1特定功能。和CheckFeatureLevel(D3D11_FEATURE_D3D11_OPTIONS)的结构返回全部为FALSE。 从ID3D11Device1获取后,ft_level也是D3D_FEATURE_LEVEL_11_0

这里有什么我想念的吗? 我使用的是用于AMD 5950卡的Windows7 SP1(带有平台补丁),Windows 8.0 sdk和Catalyst 13.9驱动程序。

2 个答案:

答案 0 :(得分:1)

您可以通过安装适用于Windows 7的平台更新来获得部分Direct3D 11.1功能:http://msdn.microsoft.com/en-us/library/windows/desktop/jj863687(v=vs.85).aspx

你描述的行为完全没问题。您的硬件/驱动程序组合仅支持功能级别11_0,这意味着您不能仅使用11.1功能。

答案 1 :(得分:0)

D3D11.1仅适用于Windows 8。一些DXGI 1.2 API和ID3DUserDefinedAnnotation也在Windows 7上移植,但大多数功能只是说不。