Real Life DirectX 10 Performance 67
AnandTech has a look at the performance PC gamers can expect see under Windows Vista with DirectX 10. Unfortunately, it isn't pretty. Despite the power of the new 10-compliant graphics cards, the choices made in developing this technology have resulted in a significant gap between what is possible and what is actually obtainable from commercial PC hardware. What's worse, the article starts off by pointing out that much of the shiny effects exclusive to DX10 games would have been possible with DX9, had Microsoft been inclined to develop in that direction. From the article: "[Current] cards are just not powerful enough to enable widespread use of any features that reach beyond the capability of DirectX 9. Even our high-end hardware struggled to keep up in some cases, and the highest resolution we tested was 2.3 megapixels. Pushing the resolution up to 4 MP (with 30" display resolutions of 2560x1600) brings all of our cards to their knees. In short, we really need to see faster hardware before developers can start doing more impressive things with DirectX 10."
At this point (Score:3, Interesting)
At this point DirectX 10 is more or less just a plaything. Cards are out supporting it, since hardware is almost always ahead of software (harder to develop for something that doesn't exist), but it is brand new and few systems support it (only systems running Vista using teh very newest graphics hardware). IT is at this point a curiosity for the most part. It's not really useful to start talking about performance until there's been a good deal more time for people to work with it, including making games designed for it, not ported to it.
Re:Poor PC gamers... (Score:3, Interesting)
Re:And yet ... (Score:2, Interesting)
Re:That means ... (Score:5, Interesting)
DX10 is an API with a built-in performance penalty. The way it is designed has all sorts of restrictions and limitations on how things are done. Why? In order to make it "DRM enhanced". Whether you are using DRM content or not, the video system is required to operate under DRM rules. It prohibits things like direct memory access, just in case you happen to have DRM video somewhere and you tried to do a video capture. It also imposes a variety overhead costs, like validating memory accesses to prevent you from reading or writing anyplace that could impact DRM security. It cripples functions or continuously re-validates function calls to ensure that they cannot be called in any manner that might be a threat to the DRM system.
You can benchmark API quality by a great many things, but performance is fairly irrelevant when that performance is tied so much to the undelying hardware.
Normally correct, but in this case the API deliberately hamstrings the hardware.
DX10 is a good API if in a couple of years time
Yes, faster hardware will speed things up. However that faster speed will still be slower than it would have been without DX10.
-
Re:That means ... (Score:3, Interesting)
Harf. (Score:3, Interesting)
Does DirectX9 have all the capabilities needed to run something like Aero? Yes, but DirectX9 also runs on systems which would drag under the demands of something like Aero. Microsoft has a vested interest in preventing their new software from running on hardware which will struggle with Aero, because then there'll be a lot of people complaining about how (insert the bad side of slow Aero here.)
DirectX10 has a much higher minimum bar to entry. If your stuff is DirectX10 ready, it's almost certainly Aero ready. That's why they made the requirement - they didn't want old hardware making their shiny new product look like crap. (That it forces new hardware purchase, which gets OEMs and VARs to support the new OS, certainly helps.)
If you look at it from a business perspective at the same time that you look at it from a technical and an "oh god I have to deal with stupid users" perspective, you'll start to see why just using the DirectX name to set the new low watermark was actually a relatively simple way for Microsoft to flatten several problems at once.