Skip to main content
GameDev.net gamedev.net
🔒 Locked

[D3D10] A simple comparison of D3D9 and D3D10

Started by jollyjeffers Dec 12, 2005 at 2:25 PM 30 replies 17.6k views
Original Post
jollyjeffers
jollyjeffers
As I mentioned in the main announcement thread, I had a couple of articles prepared for Direct3D 10. The first of these isn't exactly ground-breaking, but it might be of interest to some of you guys. Can't hurt to let you guys have a read [smile] It's essentially a tidied-up version of some notes I made whilst reading through numerous technical documents trying to make sense of the new API. In order to get a grasp of things that had changed I made some contrasts back to how they currently exist in D3D9... Vertex Buffers in Direct3D 10. By all means use this thread to discuss anything in the article and/or raise any questions and comments. As you'll see, it's a fairly basic article - so it doesn't cover *everything* from the new API [smile] Enjoy! Jack EDIT: Fixed broken link
<hr align="left" width="25%" />
Jack Hoxley <small>[</small><small> Forum FAQ | Revised FAQ |
celestis_genesis
celestis_genesis
uhh, could you fix the link please? Im quite sure i dont have the Development fodler on my K drive...nor do I have a K drive [wink]
reltham
reltham
Your link is broken. I want to read it, please fix.
jollyjeffers
jollyjeffers
okay, the link should be sorted now. I'll go hang my head in shame at that piece of stupidity [headshake]

Jack
<hr align="left" width="25%" />
Jack Hoxley <small>[</small><small> Forum FAQ | Revised FAQ |
Armadon
Armadon
Fantastic article bud.
Well done.
blueshogun96
blueshogun96
I have a question, when will DirectX 10 be available? Can't wait to give it a spin :)
__ODIN__
__ODIN__
Quote:
Original post by blueshogun96
I have a question, when will DirectX 10 be available? Can't wait to give it a spin :)


Today :) Go get the latest DX9 December SDK, and it will include all the samples etc. There are no DX10 graphics cards out yet, of course, and you need the latest Windows Vista version to run it, but apart from that you're set to go :) The refrast is running like a beaut, I hear.

Allan
blueshogun96
blueshogun96
Quote:
Original post by __ODIN__
Quote:
Original post by blueshogun96
I have a question, when will DirectX 10 be available? Can't wait to give it a spin :)


Today :) Go get the latest DX9 December SDK, and it will include all the samples etc. There are no DX10 graphics cards out yet, of course, and you need the latest Windows Vista version to run it, but apart from that you're set to go :) The refrast is running like a beaut, I hear.

Allan


Only windows vista? Whoa... :) Thanks though.

I also have another question, will I still be able to use C? I am a C programmer that prefers to use 100% pure C code for my games. I only use C++ when I feel it is absolutely necissary.
Flimflam
Flimflam
I still find it a tad bit dissapointing that they chose to only allow Vista to use DX10. I have nothing against Microsoft, but when they split the userbase like that, it's really hard to jump into new technologies and come out thinking you're going to hit a large audience.
RDragon1
RDragon1
On the other hand, sometimes you just have to say "screw it" to backwards compatibility and leap forward without constraints. I don't need my Pentium 4 to function as an 8088 - clean it out!

Did they actually make any specific mention that they will NOT be offering DX10 for Windows XP? Or are you just assuming that because the current SDK samples will only run on it?
dave
dave
Quote:
Original post by blueshogun96
Quote:
Original post by __ODIN__
Quote:
Original post by blueshogun96
I have a question, when will DirectX 10 be available? Can't wait to give it a spin :)


Today :) Go get the latest DX9 December SDK, and it will include all the samples etc. There are no DX10 graphics cards out yet, of course, and you need the latest Windows Vista version to run it, but apart from that you're set to go :) The refrast is running like a beaut, I hear.

Allan


Only windows vista? Whoa... :) Thanks though.

I also have another question, will I still be able to use C? I am a C programmer that prefers to use 100% pure C code for my games. I only use C++ when I feel it is absolutely necissary.


Yes will still be able to write you apps in C.
mengha
mengha
Quote:
Original post by Flimflam
I still find it a tad bit dissapointing that they chose to only allow Vista to use DX10. I have nothing against Microsoft, but when they split the userbase like that, it's really hard to jump into new technologies and come out thinking you're going to hit a large audience.


It isn't compatible with XP is it? (Im not sure :/ ) Because of the new driver model?

dave
dave
No it is not. As stated above earlier.
d000hg
d000hg
First, thanks for that. I found it pretty easy apart from some shader-specific stuff (I don't use shaders currently).

A few general questions; apologies if they get asked all the time:

1)I thought they were providing some sort of wrapper for DX10 so you could write DX10 code and it got mapped into DX9 code on XP? Unless it was the other way round...
2)The fact that DX10 requires a certain feature-set - how does this allow nVidia/ATI to bring new features to their cards? It's not like with DX9 where SM3.0 is supported before most cards did...
3)Does D3D10 use SM4.0 then? Is this idea of a 'Geometry shader' new to D3D10?

It's a bit sucky there's no way to sue it on XP - I use DX8.1 and I'd rather switch straight to 10 but if it's Vista-only I don't want that restriction and I will need to port to DX9 some point soon.
jollyjeffers
jollyjeffers
Quote:
Original post by d000hg
1)I thought they were providing some sort of wrapper for DX10 so you could write DX10 code and it got mapped into DX9 code on XP? Unless it was the other way round...

My understanding is that it's a low-level feature that the application programmer won't see. As in the D3D9 runtime that the application sees will remap it's calls internally to the corresponding D3D10 runtime calls...

There is DirectX 9.L in here somewhere - I'm not 100% sure where that fits in alongside DX9 on XP and DX10 on Vista... All I know is that it natively takes advantage of the Vista driver model.

Quote:
Original post by d000hg
2)The fact that DX10 requires a certain feature-set - how does this allow nVidia/ATI to bring new features to their cards? It's not like with DX9 where SM3.0 is supported before most cards did...

If you watch the PDC 05 videos on the developer centre, Sam Glassenberg fields a question about this (from TomsHardware.com I think). He seemed to indicate that there would be more regular "point releases" - say, 10.0 - 10.1 - 10.2 for example. Each new release would add the new features. However that does still mean that ATI/NV can't compete with eachother on features as I understand it.

Quote:
Original post by d000hg
3)Does D3D10 use SM4.0 then? Is this idea of a 'Geometry shader' new to D3D10?

Yes to both [smile]

Quote:
Original post by d000hg
It's a bit sucky there's no way to sue it on XP - I use DX8.1 and I'd rather switch straight to 10 but if it's Vista-only I don't want that restriction and I will need to port to DX9 some point soon.

If you're looking at moving forwards and targetting an XP+Vista type solution then I'd recommend DX9 and DX9.L; I'd guess only the big fish (who have Vista CTP's) will be working heavily with Vista pre-release.

hth
Jack
<hr align="left" width="25%" />
Jack Hoxley <small>[</small><small> Forum FAQ | Revised FAQ |
BornToCode
BornToCode
No offense. Now i can see why a lot of people hate microsoft so much. What hte heck is wrong with these guys. The ENTIRE API IS CHANGE. Now they are forcing me to learn those new crap. It is like you have to relearn the Damn thing. I think i will be converting to GL
d000hg
d000hg
Quote:
Original post by jollyjeffers
Quote:
Original post by d000hg
2)The fact that DX10 requires a certain feature-set - how does this allow nVidia/ATI to bring new features to their cards? It's not like with DX9 where SM3.0 is supported before most cards did...

If you watch the PDC 05 videos on the developer centre, Sam Glassenberg fields a question about this (from TomsHardware.com I think). He seemed to indicate that there would be more regular "point releases" - say, 10.0 - 10.1 - 10.2 for example. Each new release would add the new features. However that does still mean that ATI/NV can't compete with eachother on features as I understand it.
But if they bring out 10.1 doesn't that mean you couldn't install it until you bought a new 10.1 supporting GPU? I guess maybe the card makers will know in adavance so can support maybe up to 10.4 when 10.1 is released, like how some cards supported stuff you couldn't use until D3D9 came out?

Quote:
Original post by jollyjeffers
Quote:
Original post by d000hg
It's a bit sucky there's no way to use it on XP - I use DX8.1 and I'd rather switch straight to 10 but if it's Vista-only I don't want that restriction and I will need to port to DX9 some point soon.

If you're looking at moving forwards and targetting an XP+Vista type solution then I'd recommend DX9 and DX9.L; I'd guess only the big fish (who have Vista CTP's) will be working heavily with Vista pre-release.

Yeah, I guess it'll be a LONG while before there's much point me targetting a Vista-only platform, since I'd like the majority of people on GameDev for instance to be able to run my stuff...

d000hg
d000hg
Quote:
Original post by BornToCode
No offense. Now i can see why a lot of people hate microsoft so much. What hte heck is wrong with these guys. The ENTIRE API IS CHANGE. Now they are forcing me to learn those new crap. It is like you have to relearn the Damn thing. I think i will be converting to GL
Did you actually READ the article? It's not a HUGE change from D3D9 if you already use shaders extensively. So you're going to learn OGL from scrathc instead of learn some changes to DX - that makes sense.

dave
dave
Quote:
Original post by BornToCode
No offense. Now i can see why a lot of people hate microsoft so much. What hte heck is wrong with these guys. The ENTIRE API IS CHANGE. Now they are forcing me to learn those new crap. It is like you have to relearn the Damn thing. I think i will be converting to GL


Read and think before you speak my friend.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.