# So, Direct3D 11.2 is coming :O

## Recommended Posts

_the_phantom_    11250

Why the negative vibe on this release???  It seems pretty solid to me.

*puts on professional rendering developer hat*

The release is solid, don't get me wrong, the only issue I have is what features are going to end up going back to Win7? This hasn't been addressed anywhere at all and so from a 'use it in the real world' stand point, much like 11.1, it's a great big unknown.

To be honest most of the things I could live without, but Tiled Resources is a BIG thing because it brings a feature parity with both the up coming consoles.

As much as I like using Win8 at home and will update to Win8.1 pretty much right away the fact of the matter is that Win7 represents a very large market share still and will for some years yet so unless features are also avaliable on Win7 you will get a 'meh' reaction as they aren't overly fessible to work with/use.

##### Share on other sites
mhagain    13430

<snip>

Yeah, this, basically.

OK, D3D10/Vista are behind us, and it's understandable if MS didn't want to backport the driver model as well as the API, but with 11.1 and now 11.2 the locking of a D3D version to a Windows version seems more and more an artificial and marketing-driven direction than anything based on technical merit.  A lot of good work on this side of things was done with both D3D9 and 11, and it seems quite bizarre that MS would not only be so willing, but almost so eager, to throw it out.

D3D9 didn't win the API war by being locked to a specific Windows version and having all users upgrade in droves; it won because it was consistent and that consistency was available everywhere.  11.1 and 11.2 just don't have that, no matter how many cool and/or interesting features they bring to the table.

##### Share on other sites
Alessio1989    4634

- It appears that d3d11.2 is not coming to Windows 7 (at least they could port the interface, like they did with d3d11.1), and windows 7 has like... 80% of the gaming market share?

- Cap bits, cap bits, and cap bits again... they should never have come back :\

The rest are all good and nice feature...

Edited by Alessio1989

##### Share on other sites
Jason Z    6434

Ok - I understand your points, and for the most part I agree with them completely.  The optionality of the features is what bothers me, but I think that is how point release features work...  Perhaps for full required compliance there will be a D3D12 at some point in the future.

If I recall correctly, 11.1 didn't start out being supported on Win7 either, did it?  That was added by an update later on in the year - or am I remembering wrong?  Anyhow, thanks for the responses, I think we are in the same boat  with wanting back porting and no required feature checking!

##### Share on other sites
_the_phantom_    11250
Some D3D11.1 got back ported to Win7 as part of a platform update, I seem to recall it being tied to an IE update too - I don't think everything made it back however (and it broke PIX, which has been fun here.. *sigh*), I seem to recall reading some features didn't work.

I should probably double check that at some point just to see where things are.

##### Share on other sites
MJP    19754

Some D3D11.1 got back ported to Win7 as part of a platform update, I seem to recall it being tied to an IE update too - I don't think everything made it back however (and it broke PIX, which has been fun here.. *sigh*), I seem to recall reading some features didn't work.

I should probably double check that at some point just to see where things are.

Yeah they technically back-ported the interface, but most of the new functionality was tied to DXGI 1.2 which wasn't back-ported. Not that there was much new functionality to begin with...the only really new GPU feature was UAV's from all shader stages (which you can't use on Win7).

##### Share on other sites
_the_phantom_    11250
Yeah, which is really annoying and is honestly making me consider switching back to using OpenGL again because while it might have the (broken) bind-to-edit model at least if I want to release something which uses this newer functionality I'll be able to hit all the platforms again.

At work it just means D3D11 only feature level only on the PC and forget about the extra functionality as a) it's not worth it for the market share and b) we don't have any Win8 machines anyway and our gfx cards are NV470GTX so no functionality there either.

##### Share on other sites
MJP    19754

Indeed. It's nice that we're exclusive to a console so we don't need to worry about this stuff for shipping, but it still causes problems for the Windows build of our game that we use for development. Currently we have to write and maintain expensive and/or complex fallbacks on Windows to emulate some of the things that we can do on PS4.

##### Share on other sites
mhagain    13430

Bind-to-edit doesn't bother me so much with OpenGL because at least we've got EXT_direct_state_access which both AMD and NVIDIA support (and of which some parts have made it into core - such as the glProgramUniform calls; it also helps that id Software used it for textures in Doom 3 BFG so support is going to be good).  The bigger-by-far problem is driver quality and consistency not being as good, and if that were to be resolved then I'd likewise be looking at it more seriously.  As I said above - MS seem too eager to throw away their previous good work these days, which is a really odd thing to be doing and not in the interests of either developers or end users.

##### Share on other sites
Promit    13246

Personally I'm just glad I didn't take the proposed bet amongst friends that Chuck was the ONLY person working on D3D. Still need to open a betting pool on how many people are actually committed to that tech's development internally though.

Bind-to-edit doesn't bother me so much with OpenGL because at least we've got EXT_direct_state_access which both AMD and NVIDIA support (and of which some parts have made it into core - such as the glProgramUniform calls; it also helps that id Software used it for textures in Doom 3 BFG so support is going to be good).  The bigger-by-far problem is driver quality and consistency not being as good, and if that were to be resolved then I'd likewise be looking at it more seriously.  As I said above - MS seem too eager to throw away their previous good work these days, which is a really odd thing to be doing and not in the interests of either developers or end users.

Our GL pipeline is shared with ES devices, which means no DSA :( And driver quality, particularly on AMD, is a bitch. Crossfire is even worse.

Edited by Promit

##### Share on other sites
xdopamine    378

The updated tiled resource sample is out now: https://tiledresources.codeplex.com/

It works perfectly on my GTX 670 with the 326.01 driver. Yeah, this is a nice new toy!

##### Share on other sites
quaikohc2    454

I am thinking about installing windows 8.1 just to try it. Can you confirm it works on 660 GTX?

##### Share on other sites
mhagain    13430

Something far more interesting that D3D11.2 seems to be the inclusion of WebGL in IE11 - preliminary documentation here: http://msdn.microsoft.com/en-US/library/ie/bg182648%28v=vs.85%29 - especially as it seems to be a decent, performant implementation rather than some kind of emasculated afterthought.

##### Share on other sites
xdopamine    378

I am thinking about installing windows 8.1 just to try it. Can you confirm it works on 660 GTX?

I think if it works on my GTX 670 it should also work on your GTX 660. The 326.01 driver should be installed over windows update, however, it wasn't available to me. I googled for the setup and found a download link for the driver CAB file. I unpacked the CAB file but when I tried to install the driver the setup told me that my card isn't supported. You can google for an INF patch which solves this problem. Just make sure to disable driver signing enforcement, else the installation will fail.

##### Share on other sites
ranakor    439

I just wish they lifted the 16K texture size limit at the same time as they introduced tiled ressources, wonder if they'll do that in DX12, would be really nice to just load up those high res 64-128K textures and not have to manage them.

##### Share on other sites
Chris_F    3030

The fact that Microsoft is making D3D 11.2 a Windows 8.1 exclusive is extremely annoying. Yeah, I know Windows 8 sales haven't been what they wanted them to be, but are they really stupid enough to think that people are going to buy it for minor D3D update? The fact is that not everyone is upgrading to Windows 8, and as long as there is still a large chunk of people using Windows 7, it's going to be a pain in the ass to try and develop with D3D 11.2, so why even bother.

##### Share on other sites
_the_phantom_    11250

I just wish they lifted the 16K texture size limit at the same time as they introduced tiled ressources, wonder if they'll do that in DX12, would be really nice to just load up those high res 64-128K textures and not have to manage them.

OK, so lets do the maths...

32k => 32768 bits
64k => 65536 bits
128k => 131072 bits

Of course we now need to square those numbers
32k => 1,073,741,824
64k => 6,294,967,296
128k => 1,721,115,869,184

But that's still only 1 bit per pixel, so lets make it RGBA8, x4 to get it into bytes, then /1024 a few times to get the number sane :
32k => 4,294,967,296 bytes => 4.0GB (BC3 -> 1GB, BC1 -> 0.5GB)
64k => 25,179,869,184 bytes => 16.0GB (BC3 -> 4GB, BC1 -> 1.0GB)
128k => 68,719,476,736 bytes => 64.0GB (BC3 -> 16GB, BC1 -> 4.0GB)

Of course that is only the top level mip, I think the maths is you need to add another 1/3 on for all the mip levels (so 5GB+, 21GB+ and 75GB+ all in).

Now, my GPU (AMD HD 7970 ) has 3GB of memory, the largest memory on a single GPU is 6GB on something like an NV Titan.

So, there is a slight size issue with trying to load textures that big into VRAM AND most of it will wasted as you simply won't be looking at the data.

16K with PRT is a sane solution, even if it does involve a bit more work. Edited by phantom

##### Share on other sites
_the_phantom_    11250

The fact that Microsoft is making D3D 11.2 a Windows 8.1 exclusive is extremely annoying. Yeah, I know Windows 8 sales haven't been what they wanted them to be, but are they really stupid enough to think that people are going to buy it for minor D3D update? The fact is that not everyone is upgrading to Windows 8, and as long as there is still a large chunk of people using Windows 7, it's going to be a pain in the ass to try and develop with D3D 11.2, so why even bother.

I think what you'll see is Windows only games not touching it and Console games using it IF it isn't too much trouble to implement in their engine (and by that I mean managing D3D11 and D3D11.2 paths, the supporting code will all be there due to the existence of these features on consoles).

The biggest problem is that if your shop isn't Win8 based then you won't be able to test/implement these features for tools development so things like painting terrain in a live in-game editor suddenly becomes much harder as you'll end up having to do the software solution in order to emulate it :|

(Edit: I'm half wondering how hard it would be to shift our engine at work to support GL4.3 so that, with updated hardware, we could support this via a different backend. ) Edited by phantom

##### Share on other sites
ranakor    439

I just wish they lifted the 16K texture size limit at the same time as they introduced tiled ressources, wonder if they'll do that in DX12, would be really nice to just load up those high res 64-128K textures and not have to manage them.

OK, so lets do the maths...

32k => 32768 bits
64k => 65536 bits
128k => 131072 bits

Of course we now need to square those numbers
32k => 1,073,741,824
64k => 6,294,967,296
128k => 1,721,115,869,184

But that's still only 1 bit per pixel, so lets make it RGBA8, x4 to get it into bytes, then /1024 a few times to get the number sane :
32k => 4,294,967,296 bytes => 4.0GB (BC3 -> 1GB, BC1 -> 0.5GB)
64k => 25,179,869,184 bytes => 16.0GB (BC3 -> 4GB, BC1 -> 1.0GB)
128k => 68,719,476,736 bytes => 64.0GB (BC3 -> 16GB, BC1 -> 4.0GB)

Of course that is only the top level mip, I think the maths is you need to add another 1/3 on for all the mip levels (so 5GB+, 21GB+ and 75GB+ all in).

Now, my GPU (AMD HD 7970 ) has 3GB of memory, the largest memory on a single GPU is 6GB on something like an NV Titan.

So, there is a slight size issue with trying to load textures that big into VRAM AND most of it will wasted as you simply won't be looking at the data.

16K with PRT is a sane solution, even if it does involve a bit more work.

I don't really get your point, the whole point of tiled ressources is that you don't load all that, but you can get more detail when needed, i actually have textures that large & of course i don't want to display the whole thing at full quality, but the same applies for 16K, i'd just like all the work to be offloaded to DX (instead of an array of 16K tex, i'd like to handle it as a single 64tex when, functionally, it's an actual single 64K tex being mapped and not an atlas of smaller textures).

If you mean issues with loading from disk i used amplify from unity, & it's working just fine with 512K textures, and that's a software solution!

##### Share on other sites
ajmiles    3304

Has anyone had the Tiled Resources demo run on a GCN card yet (7850 here)? CheckFeatureSupport with the 13.15.1 driver is telling me tiled resources are not supported at all and the demo falls back to using WARP.

##### Share on other sites
Sock5    162

Hmm, so the tiled resources won't run on older dx11 gpus...feelsbad.jpg

##### Share on other sites
Alessio1989    4634

Hmm, so the tiled resources won't run on older dx11 gpus...feelsbad.jpg

you can always try to implement it by yourself.

for example, the first public appearance of mega texture was for DX9 hardware, in enemy territory quake wars (idtech 4 with Opengl 2.1?)..

here is also an "old" (2011) Microsoft DX11 and XNA Math implementation: http://blogs.msdn.com/b/chuckw/archive/2011/10/28/tiledresources11.aspx

Edited by Alessio1989

##### Share on other sites
backstep    1313
Hi all, I have some good news regarding my queries about support for nvidia devices below the 600 series. It turns out all 400 series or higher cards will support WDDM 1.3 with the forceware 326.01 or later drivers.

I got confirmation of this from a nvidia rep on another forum yesterday (>= fermi cards should use WDDM 1.3), and I've since checked the support in the windows 8.1 preview with my 560Ti, using CheckFeatureSupport with D3D11_FEATURE_DATA_D3D11_OPTIONS1:


TiledResourcesTier D3D11_TILED_RESOURCES_TIER_1 (1) D3D11_TILED_RESOURCES_TIER
MinMaxFiltering 0 int
ClearViewAlsoSupportsDepthOnlyFormats 1 int
MapOnDefaultBuffers 1 int

The updated Tiled Resources demo from page 2 of this thread is also working fine in hardware mode on this 560Ti.

So why was the card initially reporting as WDDM 1.2 in my posts on page 1 of this thread? Well it turns out my motherboard's bios default enables the onboard Intel HD 3000 display adapter in my CPU (Onboard VGA set to AUTO). Since no displays were connected, windows deactivates the device when windows loads, and it never appears in dxdiag or any device enumeration as a display device. I've never used it, never seen it shown as a display option, and never went poking in window's device manager looking for it. Even if you're not using it and windows doesn't present it as an available display device, it's driver is loaded and it's a WDDM 1.2 driver. By design or mistake, any further display devices are also made WDDM 1.2 devices (ie. pci-e graphics cards), even if their driver is WDDM 1.3 capable.

So in short, geforce 400 and 500 series also support the more useful directx 11.2 features, as well as the already confirmed 600 and 700 series. Just make sure any onboard VGA devices are explicitly disabled in your BIOS if you want to play around in the windows 8.1 preview with your nvidia card. As an aside, ivy bridge users shouldn't need to worry since the HD 4000 has a WDDM 1.3 driver included in the windows 8.1 preview.

Oh as a quick addition note: This probably also affects AMD cards used on sandy bridge systems with a HD 3000 capable CPU. You should explicitly disable onboard VGA in your motherboard bios, since the bios default may only 'hide' it in windows. Edited by backstep

##### Share on other sites
ajmiles    3304

Further to my post earlier enquiring about AMD support, they replied on their forums with the following:

"Currently tiled resources feature is supported on the HD 7790 and the Kabini based APUs (E.g. A4-5000). Support for all GCN hardware will be available in the coming months."