I met a guy last night that has been working on D3D-10. It was an interesting conversation. I never mentioned that I was an open source advocate so he just kept talking.
Apparently D3D 10 is based on hardware requirements for hardware that does not exist yet. The biggest thing that stuck in my mind was (and please forgive me for not being a coder) that there is a special pipeline that takes vertex color, poly face tex, Nor… etc. and then creates a primitive that can then be used as a single object. This is done in hardware using D3D 10.
I guess a bunch of stuff has dissapeared, sounded like it would not be very backward compatable, but I didn’t ask.
Anyway He said that both Nvidia, and ATI were working on hardware that will use this new functionality…
you don’t have it quite right… but I can only explain marginally better
yes, DirectX 10 is essentially “done”
no, hardware doesn’t exist yet [to consumers, presumably ati and nvidia have prototypes]
currently the only way to play with directx10 is to install a beta of windows vista and use the software rasterizer [it’s very slow]
the major change in directx10 is what they call “geometry shaders” which allow you to generate geometry [particle systems, surface approximations [nurbs, b-spline, height maps, whatever]…] sort geometry… and bunches of other things entirely on the graphics card.
the other change is that the graphics card is now much more controlled by the operating system. Processces can be run on the gpu and will be time-sliced [apparently] like if you had another processcor in your machine.
I haven’t heard mention of accelerating physics with dx10 hardware, but certainly things that don’t require much data going back to the game [particle systems, surface approximations… uhh, probably other things too] would be the perfect fit.