sepul
sepul

Reputation: 61

direct3d11.1 id3d11device1 can't use 11.1 features (win7)

I have successfully created d3d11.1 device and it's context (ID3D11Device1, ID3D11DeviceContext1)

using the method described in documentation :

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()

The d3d11.1 objects are valid and working, but I can't use any d3d11.1 specific feature. and the structure for CheckFeatureLevel(D3D11_FEATURE_D3D11_OPTIONS) Returns all FALSE. The ft_level is also D3D_FEATURE_LEVEL_11_0 after fetching from ID3D11Device1.

Is there something I'm missing here ? I'm on windows7 SP1 (with the platform patch), Windows 8.0 sdk and Catalyst 13.9 drivers for my AMD 5950 card.

Upvotes: 0

Views: 730

Answers (2)

Vertexwahn
Vertexwahn

Reputation: 8142

You can get partial Direct3D 11.1 functionality by installing the Platform Update for Windows 7: http://msdn.microsoft.com/en-us/library/windows/desktop/jj863687(v=vs.85).aspx

The behavior you described is perfect fine. Your hardware/driver combination only supports feature level 11_0 which means you cannot use 11.1 only features.

Upvotes: 1

galop1n
galop1n

Reputation: 8824

D3D11.1 is windows 8 only. Some DXGI 1.2 API and the ID3DUserDefinedAnnotation were port on windows 7 too, but most of the functionality are just saying no.

Upvotes: 0

Related Questions