With today's announcement of DX11.1 support on Windows 7 (http://blogs.msdn.com/b/chuckw/archive/2012/11/14/directx-11-1-and-windows-7.aspx) what do I need to do for D3D_FEATURE_LEVEL_11_1 to be enabled.
I have installed the IE10/DX11.1 patch and the Windows 8 SDK, and the latest Windows 7/8 driver (Catalyst 12.11 Beta 7).
My program is able to successfully QueryInterface a ID3DDevice1 and ID3DDeviceContext1 interface so I can access the new DX11.1 functions.
However I only seem to get D3D_FEATURE_LEVEL_11_1 on my Radeon HD 6600M series GPU, which I understand to be based on the Evergreen architecture.
Does my GPU support D3D_FEATURE_LEVEL_11_1 (on Win 7 or 8)? I don't have Windows 8 to be able to verify this.
If it does not support full D3D_FEATURE_LEVEL_11_1 feature set does it implement some parts like logic ops (from OpenGL 1.x) which are already exposed via OpenGL 4.2/4.3?
And what about some of the optimisations that have been added to various buffers and views that are exposed via DX11.1?
I have done some testing with CheckFeatureSupport and D3D11_FEATURE_D3D11_OPTIONS.
Unfortunately the current driver returns FALSE for every entry.
I am surprised, as clearly OutputMergerLogicOp should be supported it has been supported by OpenGL from the start.
Most of the stuff in D3D11_FEATURE_D3D11_OPTIONS should be supported by all DX10\11 GPUs.
Please refer to this MSDN blog entry:
In particular, although parts of the DX11.1 runtimes will be available on Windows 7, graphics features that require the 11.1 feature level will not.
If you really need access to those features, you might want to consider using OpenGL (plus, you'd pick up Vista, Mac and Linux along the way).
Why bother porting the DX11.1 API to Windows 7 if no devices are going to be able to implement any of the new functions...
When Microsoft ported DX11 to Vista they also pulled over DX11 feature level, so why not this time?
So if I install Windows 8 will my GPU support some of the DX11 optional features? (such as logic ops)
I am already implementing OpenGL 4.2 (soon to be 4.3) side-by-side with DX11 so that I can have wide OS support.
Basically GL for XP, Vista (without DX11 patch), Windows 7 (for stuff missing from DX11.1), and use DX11.1 as fall back for people who don't have GL 4.2 installed or supported by the chipset (ie Intel).
(This better not be some sort of trick to make gamers happy by saying DX11.1 has ported to Windows 7 when it has not.)
(Also makes me wonder if Microsoft can see Windows 8 struggling in the gaming market and use this as a way force gamers to upgrade - the same trick they used with DX10 not being ported to Visa to force XP gamers to upgrade.)
Wonder, how can he/she use DirectX11.1 features on Mac
One would enable support for Mac but up to the feature level that the platform supports. Once OpenGL 4.x support is made available on Mac (which I'm certain it will be, eventually), then everything should just work as is. In fact, although the highest available OpenGL version on Mac is currently 3.2, some of the features that are in later versions are accessible now as extensions on the platform.