Direct3D 7 vs Direct3D 8 (or 9)
Hello Everyone,
Is there any performance difference between DX7 and DX8 of Direct3D? I have some very old code written in DX 7 which I plan to reuse, but wonder if it is worth my time since so far I can''t find anything which the game can''t achieve without ver 8 or 9.
Will the new functionality of DX 8 actually slow down the game (e.g. Vertex Shader and the new geometry pipeline)? Just wondering...
Thanks everyone...
Once you start using DX8 I will assure you you will love it. DX7 is really messy to set up and use
Of course it won''t slow it down, it is what modern hardware is optimized for
Of course it won''t slow it down, it is what modern hardware is optimized for
There was a bug in DX7 where if you used more than just one single vertex buffer it would kill your frame rate (according to nVidia). There were probably many little bugs in DX7 that got cleared up in DX8. If anything I''d imagine DX8 should be faster, and more stable... plus it''s a cleaner, simpler API. Unless you want DDraw, use DX8 or 9. If there is no code yet, or it already needs porting, use DX9, since the code will remain up-to-date and supported for a longer period of time.
Direct3D 7''s implementation in conjunction with DirectDraw was brilliant. It was possible to do texture tricks with DirectDraw and mixing 2D and 3D was cake.
The problem with DirectX 8 and above is that it needlessly breaks compatibility. A D3D8 app that does what a D3D7 app can do will not run on older hardware even though D3D7 could pull off playable framerates.
If you want your game to work on say, Voodoo 3 cards, Direct >= 8 is not an option. I decided to go with OpenGL because of that idiocy on MS''s part. Actually it was just their successful attempt to force people to upgrade. I just use DirectX for input and sound and recently went back to DX7 for those since I didn''t need any fancy DX8 stuff for what I was doing.
If you''re looking to learn all the latest graphics tricks then DirectX 9 is your best option. DirectX 8 just served to completely sever DirectDraw from Direct3D.
Ben
[ IcarusIndie.com | recycledrussianbrides.com | Got Linux? ]
The problem with DirectX 8 and above is that it needlessly breaks compatibility. A D3D8 app that does what a D3D7 app can do will not run on older hardware even though D3D7 could pull off playable framerates.
If you want your game to work on say, Voodoo 3 cards, Direct >= 8 is not an option. I decided to go with OpenGL because of that idiocy on MS''s part. Actually it was just their successful attempt to force people to upgrade. I just use DirectX for input and sound and recently went back to DX7 for those since I didn''t need any fancy DX8 stuff for what I was doing.
If you''re looking to learn all the latest graphics tricks then DirectX 9 is your best option. DirectX 8 just served to completely sever DirectDraw from Direct3D.
Ben
[ IcarusIndie.com | recycledrussianbrides.com | Got Linux? ]
Thanks for all of your advice. For now I am looking into DX 8 docs (had been out of touch with DX development for a long while). The stuff I am going to develope probably won''t need any fancy DX8 features and besides I already have plenty of DX 7 code I can start with. But I will keep learning the latest stuff and see if I can take advantage of them.
quote:Original post by KalvinB
DirectX 8 just served to completely sever DirectDraw from Direct3D.
That''s a rather gross over-simplification. I think DX8 was more significant than that.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement