DirectX 10 / 10.1 Hardware and OpenGL

According to the following article at:

http://www.extremetech.com/article2/0,1558,2168429,00.asp?kc=ETRSS02129TX1K0000532

Microsoft dropped a bombshell at SIGGRAPH 2007. DirectX 10 hardware is already obsolete. DirectX 10.1 API will not work on DirectX 10 hardware. DirectX 10.1 will only be available on Vista SP1.

Will the changes in hardware support for DirectX 10.1 announced by Microsoft at SIGGRAPH 2007, impact current or future versions of OpenGL in any way? I am particularly interested in OpenGL 2.1 and 3.0 where the newer versions were supposed to run on DirectX 10 class hardware. Will OpenGL be able to make graceful driver changes to work on either a DirectX 10 or a DirectX 10.1 card?

Well, the G80 and R600 are hardly obsolete :wink:

10.1 just layers some new functionality, like separate MRT blending, texture cube arrays and selectable MSAA sample patterns – stuff not likely to be sorely missed anytime soon.

The OpenGL BOF presentation already mentions separate renderbuffer blending, so I imagine the other hardware features are to be forthcoming, and I think we can certainly count on a smooth, layered transition as newer hardware and features are made available.

DirectX 10.1 API will not work on DirectX 10 hardware.
Two things:

1: This is not a bombshell. This is more like an implosion device.

2: Did Microsoft take some stupid pills? I mean, forcing developers to develop to a DX10 for Vista and DX9 for XP was bad enough. But now they’re adding a third sku with DX10.1 and Vista SP1? I mean, that’s just insane.

This makes me so glad for OpenGL. And with GL 3.0 due out in September, all it will do is drive people to OpenGL.

[quote]I am particularly interested in OpenGL 2.1 and 3.0 where the newer versions were supposed to run on DirectX 10 class hardware./quote]

GL 2.1 already runs on DX10 class hardware; it always did. There are a set of extensions to 2.1 for DX10 hardware to expose its features.

I really wish people would stop referring to certain video cards are “DX10” hardware. Why don’t people see it for what it REALLY is. Nvidia and ATI made some awsome new hardware features and Microsoft decided to wrap those features up in DirectX 10. DX10 had NO bearing on those features being implemented. Every feature in DirectX 10 had been talked about at Siggraph and numerous other conferences for the last few years. So DX10 did not contribute anything…it simply wrote a wrapper around Nvidia and ATI’s new features.

I would recommend to read DX documentation before commenting on this issue.

The DX10.1 API can be used with DX10 HW. In that case the new functions will fail and some newly guaranteed things might be unavailable (You can query value containing level of HW support to determine if new features are supported). This is very similar to increase of OGL version say from 1.5 to 2.0. You got new guaranteed API features (GLSL) however you have no guarantee that they will be HW accelerated (which in DX world means they are unsupported).

If you wish to be compatible with DX10 on pre-SP1 Vista and still use DX10.1 features with SP1, you will need to remember two device pointers. DX10 one used in common code and optional DX10.1 used where DX10.1 specific features are needed. This is not that much distinct from OGL situation if you wish to use OGL2.0 API features and still be able to run on OGL1.5

Originally posted by soconne:
I really wish people would stop referring to certain video cards are “DX10” hardware.

The point of using “DX10 HW” (or mentioning DX shader version) is to easily indicate that you are talking about HW which has some set of features required by that DX/shader version. Whether the API was designed based on already prepared HW is not important in that context.

Originally posted by soconne:
I really wish people would stop referring to certain video cards are “DX10” hardware. Why don’t people see it for what it REALLY is. Nvidia and ATI made some awsome new hardware features and Microsoft decided to wrap those features up in DirectX 10. DX10 had NO bearing on those features being implemented. Every feature in DirectX 10 had been talked about at Siggraph and numerous other conferences for the last few years. So DX10 did not contribute anything…it simply wrote a wrapper around Nvidia and ATI’s new features.
Don’t be so sure of that. Don’t you think it would be a little odd that both NVIDIA and ATI just happened to support the exact same features with the same specs if DX10 had nothing to do with it?

Microsoft has a lot more to do with what the next hardware’s features will be than you may think.

Microsoft has a lot more to do with what the next hardware’s features will be than you may think.
Maybe for ATi, though not even then.

The R600 supports features that D3D10 can’t access, and I doubt 10.1 can either. And since the earliest days of nVidia, the NV product line have always supported features that Direct3D could never touch.

It seems to me that Microsoft is just playing lowest common denominator.

Don’t you think it would be a little odd that both NVIDIA and ATI just happened to support the exact same features with the same specs if DX10 had nothing to do with it?
As Korval already said, it’s not the exact same features, but only a relatively large common subset of features. And this propably has to do with the fact that neither graphics vendor can afford to not have a feature that the other one has, at least not for longer than a single generation…

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.