Sign in to follow this  
CProgrammer

insights on DX 10

Recommended Posts

My engine uses base dll's to plug in graphics API's. Now I have the opengl plugin done and want to start working on the DX one. My question: I heard DX 10 will be completely different: 1. Will it still be easily usable in my c++ engine. 2. Should I wait for it to come out before starting this plugin (work on other aspects till then). -CProgrammer

Share this post


Link to post
Share on other sites
Quote:
Original post by CProgrammer
1. Will it still be easily usable in my c++ engine.
Yes.
Quote:
2. Should I wait for it to come out before starting this plugin (work on other aspects till then).
I wouldn't. DX10 has some cool features, but you certainly won't be hamstrung by 9.0c. And features which you **need** DX10 for likely won't be available on midrange consumer hardware for quite some time.

Share this post


Link to post
Share on other sites
Thanks for the reply.
What still bothers me however, is that im less worried about what DX10 has in terms of features. But does anybody know how it will be structured. Is porting a DX9 app to DX10 trivial?

Share this post


Link to post
Share on other sites
I heard that DX was going to be scrapped in Windows Vista, and replaced with Avalon... of course, I'm probably wrong, seeing as how Sneftel seems to know about DX 10 [smile].

As for your actual question, if MS decides to keep DX, I wouldn't expect a huge change in its interface. Pretty much, I would guess just find & replace ID3D9 with ID3D10 and stuff like that.

Just my guessing and could be completely inaccurate. Cheers!

Share this post


Link to post
Share on other sites
Quote:
Original post by fyhuang
I heard that DX was going to be scrapped in Windows Vista, and replaced with Avalon... of course, I'm probably wrong, seeing as how Sneftel seems to know about DX 10 [smile].


Firsly read this, then bother to google what Avalon is and you'll see that its not remotely the same thing.

Quote:

Just my guessing and could be completely inaccurate. Cheers!


So why guess?
Sorry, this annoys me, if you dont know the answer then just dont post!. Spreading 'guesses' and 'misinfomation' doesnt help anyone at all..

Share this post


Link to post
Share on other sites
Quote:
Original post by fyhuang
I heard that DX was going to be scrapped in Windows Vista, and replaced with Avalon... of course, I'm probably wrong, seeing as how Sneftel seems to know about DX 10 [smile].

As Sneftel pointed out.. you're utterly wrong.

Quote:

As for your actual question, if MS decides to keep DX, I wouldn't expect a huge change in its interface. Pretty much, I would guess just find & replace ID3D9 with ID3D10 and stuff like that.

Utterly wrong again. The DirectX 10 API is a complete rewrite once known as fahrenheit and is not a COM API compatible with future versions. It is quite a major change and everything is based on the programmable pipeline and the legacy fixed function pipeline is finally taken out of the API. The performance is also tuned up because of an architecture change and batch rendering is eased up a little. It would be fair to say that they took a hint from the GL engine architecture and looked at their own kernel/user swaps to fix this long-time issue.

As for the question above, if your engine/application are shader based than it will be fairly trivial to write a DX10 render system as long as you have an abstract render system. If you are using the fixed function pipeline than you will have more work cut out for you but it's nothing too difficult at all.

Share this post


Link to post
Share on other sites
Thanks for the replys.
Based on them Ive decided to optimize ouit the opengl part for now, since this will probably not change as dramatically and then implement DX10 when it comes out.

-CProgrammer

Share this post


Link to post
Share on other sites
is there any information on the LDDM or the new input system windows vista will use, I want to start developing for it already, are there any sdks out already? Thanks guys, also, I think this has been answered but in a way I didnt understand, I heard once that OpenGL will be emulated to DirectX, is this true? That'd suck.

Share this post


Link to post
Share on other sites
So is DX10 not using COM? If it is then the whole principle of COM is to support old interfaces. I guess if it wasn't called DX but something else that would clear it up. So - is DX10 a new set of multimedia libs that do the same kind of stuff as DX does now, but better?

Share this post


Link to post
Share on other sites
I'm pretty sure DX10 would still use COM for it's low level interfacing, even though the managed version might not run over COM this time.

The main changes, I expect, would be to do with small batch performance, and general API overhead reduction. Since they're dropping much of their backwards compatibility, the API should be much cleaner as well.]

Porting shouldn't be a problem in a well structured renderer.
Looking forward to it :)

Share this post


Link to post
Share on other sites

Direct3D 9.L is what was/is also known as WGF 1.0 (Windows Graphics Foundation); the L stands for Longhorn. Don't expect the API to change much, if at all, the significant changes are happening under the covers with the LDDM (Longhorn Display Driver Model) and the general stability/interoperability/glitch free benefits that will bring.

Direct3D 10 is what was/is also known as WGF 2.0.

Direct3D 10 != Farenheight (though you may see the odd similarity appear).

Direct3D 10 API: lots of familiar "concepts"; some familiar names/objects; a number of new names/objects; a few new concepts.

As for how big a change/improvement, think D3D7->D3D8. Some of the changes are massive improvements in flexibility IMO, I'm really looking forward to developing with the new API!.

Think of D3D under Vista and Vista as a whole as a new next gen platform that happens to have backwards compatibility with older applications. Vista does have other features which will be applicable to games - DirectX is only a part of that. You may even want to start thinking of 2 codepaths: "enhanced for Vista with D3D10" and "legacy D3D9".


Sorry for being [deliberately] vauge, but I'm personally bound by a couple of NDAs regarding Vista and DirectX... I would say take a look at the public DirectX conference slides from Meltdown, GDC, and WinHEC, you'll find a some more detail there. (http://msdn.microsoft.com/directx/ and http://www.microsoft.com/whdc/winhec/papers05.mspx)

Share this post


Link to post
Share on other sites
From what I know about DX 10 it looks like mickerosoft is doing again an attempt to force everyone into some style that doesn't look to be nice.

Unnecessary abstraction from hardware, or bad abstraction from hardware might turn itself pretty badly.

Here is 18 months old link with a little preview I didn't like it. It looked like Directx 10 would force developers to work slightly differently than is optimal for hardware.

Share this post


Link to post
Share on other sites
Quote:
Original post by gamerking
this is a stupid question but what is coming out first?
vista or longhorn
matt


ha yes it is. but hey it's certainly better to ask a stupid question than to pretend you know it all.

http://www.microsoft.com/windowsvista/default.mspx
(notice: WindowsVista, formerly Windows code name "Longhorn")

Share this post


Link to post
Share on other sites
Quote:
Original post by gamerking
this is a stupid question but what is coming out first?

vista or longhorn


matt


They are the same thing. During development, microsoft uses a code name for most of their products (AKA longhorn, Whidbey, Blackcomb, etc). Then before release, they come up with the actual prosct name (Vista, XP, etc).

Share this post


Link to post
Share on other sites
Quote:
Original post by Raghar
From what I know about DX 10 it looks like mickerosoft is doing again an attempt to force everyone into some style that doesn't look to be nice.

Unnecessary abstraction from hardware, or bad abstraction from hardware might turn itself pretty badly.

Here is 18 months old link with a little preview I didn't like it. It looked like Directx 10 would force developers to work slightly differently than is optimal for hardware.

It sounds like you don't know very much about it - why would MS deliberately force you to do things in a slow way, after spending years and $millions creating a high-performance multimedia library set?

Share this post


Link to post
Share on other sites
S1CA put down the facts in his post above... but I will add that, from what I've read, a lot of people are looking forward to the new DX10 API's and/or Vista development [smile]

Yes, it is different (but, probably not so much that it'll set you back to square-1) but it should offer a number of interesting possibilities. In many respects, it seems like they've wiped the slate clean and really thought about how the whole thing fits together - and the clean slate has allowed them to make some otherwise big changes that would've been difficult if they'd just "bolted on" new stuff to DX9.

Given that you should be able to run your DX9 applications just fine on Vista, you're not going to be forced to use DX10 if you really don't like it [wink]

Quote:
It looked like Directx 10 would force developers to work slightly differently than is optimal for hardware.

How do you mean? there's more of a push towards the programmable pipeline - which, as I look at it, pushes development closer to the hardware [smile]

hth
Jack

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this