DirectX 9.0 Vs 10.0

rojito

Distinguished
Jan 5, 2007
209
0
18,680
I just bought an NVidia MSI 8800 GT 512 and discovered I have DirectX 9.0, so I was wondering, since i'm an iliterate on graphics cards, if it was better for me to install directX 10.0.

I use it mostly for watching HD movies, but will probably be using it to play Starcraft II, so my questions are these:

1) should I install DirectX 10.0?
2) What are the benefits?
3) where is a safe place (link, web site) and what version do you recomend me to download (if there is a 10.0a, 10.0b, etc.)?
 
um... reply to the op...

1... dx10 is NOT INSTALLABLE
2... dx10 looks better than dx9 little bit... very little...
3... again... dx10 is not downloadable program...

dx10 is only for win vista... and it comes with it...
dx10 is NOT compatible w/ xp or anything below
 
Just to clarify I thought Direct x 10 was for people with Windows Vista Ultimate edition. I was unaware it was offered to any other version, or is this not true anymore???

Update: Never mind I just looked it up. I'm incorrect its on vista not just ultimate
 
Hi Rojito.

Ok, lets give you a little background here. DirectX is what is called an API. API stands for Application Programming Interface. An API is basicly software that responds to requests from either hardware or other computer programs. In DirectX's case, the API responds to the requests from 3d graphics cards as well as the PC games that run on them.

Unfortunately for gamers, or those who are perfectly satisfied with using Windows XP, Microsoft has elected to only allow DirectX 10 to be used on Windows Vista. This means that if you're running Windows XP, chances are that you'll never be able to use DirectX 10 unless you purchase a copy of Windows Vista and install it on your machine. This is in my opinion, one tactic Microsoft is using to force gamers into adopting their new Operating System.

Anyway, to answer your questions in order - here you go:

1. You can't install DirectX 10 Without Windows Vista. If you're okay with Windows Vista then yes, install it.
2. The benefits of DirectX 10 are many, primarily once developers really start to optimize for it. The number one benefit of DirectX 10 is pixel shader 4.0 also known as the geometry shader. As I understand it, the geometry shader allows greatly increased detail and realism without a serious performance impact. DirectX 10 is also supposed to run faster and more efficiently than DirectX 9. Key word is SUPPOSED....doesn't mean it really will....yet.
3. See the above answer to question 1.

Hope this helps.


Jason.
 
jpmeaney speaks da truth.

Just one thing to add to his statement. Dont worry much about DX10 for now. Games ussually have a Developing Cycle of 2 Years or more, so games that FULLY utilize DX10 are still to come. And i mean FULLY.


You have already few examples, but their just few, and basicly they all play in DX 9 (that you have installed). So dont worry much about it.
 


Totally agree dont worry about it. For now you have a graphics card that rocks and will play any game you want to throw at it. I dont think DX10 is a reason to switch to Vista.
Mactronix
 
...It adds scheduling and memory virtualization capabilities to the graphics subsystem and foregoes the current DirectX practice of using "capability bits" to indicate which features are active on the current hardware. Instead, Direct3D 10 defines a minimum standard of hardware capabilities which must be supported for a display system to be "Direct3D 10 compatible". Microsoft's goal is to create an environment for developers and designers where they can be assured that the input they provide will be rendered in exactly the same fashion on all supported graphics cards. This has been a recurring problem with the DirectX 9 model, where different video cards have produced different results, thus requiring fixes keyed to specific cards to be produced by developers.

According to Microsoft, Direct3D 10 will be able to display some graphics up to 8 times faster than DirectX 9.0c because of the new improved Windows Display Driver Model. In addition, Direct3D 10 incorporates Microsoft's High Level Shader Language 4.0. However, Direct3D 10 is not backward compatible like prior versions of DirectX. The same game will not be compatible with both Direct3D 10 and Direct3D 9 or below. Games would need to be developed for both APIs, one version for Direct3D 9 and below if targeting Windows versions prior to Windows Vista and another version using Direct3D 10 if targeting only Windows Vista. Windows Vista does, however, contain a backward compatible Direct3D 9 implementation.

The Direct3D 10 API introduces unified vertex and pixel shaders. In addition, it also supports Geometry Shaders, which operate on entire geometric primitives (points, lines, and triangles), and can allow calculations based on adjacent primitives as well. The output of the geometry shader can be passed directly onwards to the rasterizer for interpolation and pixel shading, or written to a vertex buffer (known as 'stream out') to be fed back into the beginning of the pipeline.

D3D10 functionality requires WDDM (Windows Display Driver Model) and new graphics hardware. The graphics hardware will be pre-emptively multithreaded, to allow multiple threads to use the GPU in turns. It will also provide paging of the graphics memory.

The version of Direct3D 9 available in Windows Vista is called Direct3D 9Ex. This modified API also uses the WDDM and allows Direct3D 9 applications to access some of the features available in Windows Vista such as cross-process shared surfaces, managed graphics memory, prioritization of resources, text anti-aliasing, advanced gamma functions, and device removal management.


Source: http://en.wikipedia.org/wiki/Features_new_to_Windows_Vista


When comparing an XP machine to a Vista machine, what people are getting/seeing in games now is the difference between DX9a/b/c and DX9ex. There are *no* true DX10 games on the market today, as evidenced by the simple fact that you can run the same titles, from the same discs, on both XP and Vista. A true DX10 game would not run at all on the XP box.
 
jpmeaney, mostly good points, but a little wrong in subtle ways.

DirectX enhancements are of a relatively minor variety, to the end user. They are pretty significant architectural changes under the hood, though. That means eventually, once the developers optimise for DX10, you should get better visuals and faster code. Unified shaders, more constants, SM4.0, virtualization, no cap bits - all good good things.

It CAN NOT be ported to WinXP without a major rewrite of the XP kernel, also known as making XP like Vista - makes absolutely no sense whatsoever.

In terms of downloading - I wouldn't worry about it. Every game that requires DX comes with it on the media, so it will get installed when you install the game if you need it.

In terms of worrying about DX10 - right now running it in DX10 mode in most games comes with a performance hit (that's always the case; the most recent eye candy generally is modest and comes with a big performance hit until developers optimise better and the hardware gets better).

And last but not least, 8800 GT, in fact, IS a DX10 GPU.
 


Didnt know that info from wikipedia. Although it seem hard to believe. If it was true, i guess everybody would welcome it in open arms, instead of what is happening atm. There isnt much the discussion between the two diferent APIs ( games have been made before for DX/OpenGL for example) and that didnt seem too much of a problem. I believe there is more to DX 10 than meets the eye. For example, that Microsoft is charging dearly for a Digital Signed Driver to the manufactureres. And other Off-topic related Situatons.

Not calling you a liar or so, dont get offended, the info comes from wikipedia afterall ( isnt bullit proof, but ussually pretty reliable).This ill wait to be proven, its too good to be true. And M$ isnt know to make flawless products. But is know for great marketing caimpains.

According to Microsoft, Direct3D 10 will be able to display some graphics up to 8 times faster than DirectX 9.0c because of the new improved Windows Display Driver Model.
 
No one will make a DX10 only game yet since it will hurt their sales of the game. Not enough demand.
 
Rad - Thanks for not calling me a liar... 😀

The simple fact is the two are different API's, and that code written for one is not compatible with the other. In the case of a Vista machine, the game runs on DX9ex - Which is a DX9 API set that includes some extra functionality and the ability to communicate graphics via WDDM as Vista requires.

***

There's a couple layers of marketing fluff - On the MSFT side, add a new functionality (shaders, or whatever) in 10 that didn't previously exist, then figure out how to duplicate the effect in 9, measure the difference... OMG!! 10 is faster!! Yeah... Or, if you dont' like that one - How about taking into account that the original purpose of Direct X was to cut through the layers of the Operating System to talk 'Direct'~ly to the hardware for best performance... And then have the MSFT turn around and add hooks to a specific OS?? What about standards?? But then when you have 80+% of the market, and
can rightfully call yourself "The Standard", then does it really matter?? What about the perception/reality/idea/want/need that DX9 isn't sufficient any more, that a new model really is needed to drive performance and visual improvements, and coming to the conclusion that 9 has to be trashed... How do you make people swallow that The Cord Must Be Cut when the install base is *that* large??

On the side of the game creators - Is it really right to add some (undefined, unexplained, and unnamed) of the new DX9ex commands to your DX9 game and call that "DX10"?? They can say "it's DX10 functionality" for sure, and that because it is DX10 functionality, then the game must be DX10... But it isn't really DX10, after all, is it?? But then, they've also been put in the position of literally having to develop TWO COMPLETE versions of the same game for their XP and Vista user bases. Is it a sound business decision to do that?? Especially when a Vista machine will run your DX9 stuff?? Or is it easier just to put a DX10 label on it and keep your mouth shut?

At the various benchmarkers and reviewers - Is it right to measure the difference between DX9c on an XP box and DX9ex on a Vista machine, and call that a comparision of 9 to 10?? You would think these people intelligent enough to (1) understand and communicate that nothing exists for 10 yet, and (2) understand and communicate that what's really being measured is 9c and 9ex , and (3) understand and communicate the extra work involved with DX9ex having to translate what is really a DX9 game to the new WDDM??


Also - and understand that the following doesn't apply to far less than 5% of the market who are technicians and enthusiasts - Since it *is* a bigger and more complex story than anyone is really saying, and since the general user population only cares that they got their eMail, that the internet works, and that the game plays. Does it really make sense to widely publicise the actual differences to people who... <cue Old Guy Voice> Don't Know... Don't Care...
 


Hardly......

Other posters have hit it on the head. You will barely notice the difference while playing unless you pause the game and look at the DX9 screen next to a DX10 screen. Only one thing is for sure, your wallet will be lighter, because you have to buy Vista, and then depending on your setup you'll need to bump to 4gigs of ram because Vista is a pig.
 


Yesh lol by the time that gets ported to games I think we'll all be installing windows 7 and going to DX11 which will be in the current 'state' DX10 is in right now :pt1cable:
 
DX10.1 IS where it's at, but there's no one else there. Which means it's ultra exclusive of course. :sol:

Anywhoo, unlike what alpha says, it is downloadable but strictly for Vista users, and thank god that's true because there's a ton of corrupt installs out there.

But if you're on XP just check for the latest DX9.0C redistributable if you have concerns.

However as mentioned most games ship with thelatest DX level they require, which is alaos a good thing because stuff is added/subtracted all the time.
 
I was under the impression that DX10.1 was what DX10 was supposed to be had Nvidia been able to make it work. Indexable cube map arrays (sweet global illumination :) )and AA standardization (No more crappy EdgeAA!)are not features to be scoffed at. Read more here.

I suspect that by the time we start seeing "true" DX10 games (no, Crysis does not count) Nvidia will have a DX10.1 compliant hardware available.
 

Yes, mostly.
I thought Vista came with DX 10, and SP1 game with 10.1 ?
I read the same load of wonderful things about geometry, detail, realism, etc without a big performance impact. I still believe it's possible. However, I don't know of ANY current game (even crysis) that can pull this off. Maybe we need to wait for Elder Scrolls 5 - but by then, DX11 will be out.
 
Yeah the main draback is that while all of these things are more efficient, the devs haven't just gone that route, they've also increased the workload, so while it may be 3 times as efficient, often they've increased the amount of work by 5+ times, and then say "Oh yeah it's slow, but it's doing so much work that a DX9 card would take Xtimes as long to do it".

To me there's two options for DX10, and they're only doing the slightly shinier version rather than the more efficient version. And not everyone is going to have a high end card, and when the Shiny version runs like crap even on a higher end card, what's the point? A little more focus on offering some efficiency to the mid range would be nice. Seriously Crysis DX9 high settings running at 20-50% speed boost would probably be more attractive to many people than the slightly shinier model running at 70% the speed of DX9.
 
MS claimed that DX10 would dramtically reduce the instruction length needed to communicate with the video card. However, they also made it default to multi-threaded mode (DX9 does not), which means that it must use locks when updating resources. They thought that having the video card do more would make it faster.

Then, the games that were written for DX10 were not just rewrites of current games. They (Crysis developers for example) wanted to make their games even more realistic than previous games. So, inspite of any efficiency achieved with DX10, the games written for it piled on visual effects that more than compensate for that efficiency.

Meanwhile, Nvidia and AMD are trying to make DX10 cards that can do the eye candy without being too expensive. This has not worked out, as it it obvious you need to spend a lot of green to get card(s) that can do it.

Now we have quad core CPUs and, as Intel is saying, the rendering pipeline can be moved back to the CPU. We will have to see where that goes.
 

Sorry,
I still don't see how Crysis in DX9 can be faster than in DX10 -WITH the same number of objects, textures, etc? I don't see this taking any more work.
So, DX10 advantages is all just about "Shiny-ness" , effects, blur, depth, etc? (from a visual perspective). Actually I think crysis has depth of field in DX9 as well.
Confused...
 

Crysis does have depth of field and a screen based motion blur in DX9, but these effects are much better with DX10. Especially the motion blur, which is object based under DX10. Actually it is possible to enable object based motion blur under DX9, but it's glitchy as hell.

In any case Crysis isn't really a DX10 game; most of its development took place before DX10 hardware even existed. I still don't know of any games under development that are native to DX10, as in they won't run on DX9 hardware at all.