Jump to content
  • Advertisement
Sign in to follow this  
ammar26

Directx9 + Directx10 Programming Help ?

This topic is 3079 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm new to Direct X API still confuse to decide which one to choose between x9 and x10 i have some questions , plz help me All DirectX9 functions from D3D9 are available in DirectX10 D3D10 ? If i program something in DirectX 10 ? Will it will be easy to convert it in DirectX9 compatible somehow ? I want to program my Game in High Graphics using DirectX 10 but i still want to introduce a LOW GRAPHICS OPTION in my game that run on Direct X9 for XP users , how will i perform that ? Do i have to reprogram the whole Game in DirectX9 , or Do i need to just change the function calls inside the game ? do i need to create separate EXE for both ? Please help me DirectX experts , i'm beginner and confused

Share this post


Link to post
Share on other sites
Advertisement
DirectX 10 did away with the fixed function pipeline meaning that you'd need to write shaders for everything, even basic transformation and lighting. I do believe that some semantics were changed with DX10 as well but I'm not toally sure about that.

To do what you are proposing your best bet would be to abstract the rendering engine away such that you can write a DX10 and a DX9 version and switch between them and your game app will be none the wiser.

Share this post


Link to post
Share on other sites
Quote:
Original post by ammar26
All DirectX9 functions from D3D9 are available in DirectX10 D3D10 ?
No, there are bits of D3D9 that aren't in D3D10 (the fixed function pipeline). Everything that D3D9 could do, D3D10 can do, but now you have to write some bits yourself instead of letting D3D do it for you. It's pretty easy though.

Quote:

If i program something in DirectX 10 ? Will it will be easy to convert it in DirectX9 compatible somehow ?
If you restrict yourself to only using particular DirectX 10 features, then yes, it should be quite easy. Use shader model 3 or lower, only access D3D from a single thread, and don't do weird things with your resources (like treating vertex buffers as textures). I think that about covers it.

Quote:
I want to program my Game in High Graphics using DirectX 10 but i still want to introduce a LOW GRAPHICS OPTION in my game that run on Direct X9 for XP users , how will i perform that ? Do i have to reprogram the whole Game in DirectX9 , or Do i need to just change the function calls inside the game ?
You'll need to write two different versions of your rendering code, one using Direct3D9 and one using Direct3D10. You should try and share code between them as much as possible - for example, code that loads 3D models into vertex/index buffers can probably be the same for both. You can just have both code paths in your executable if you like, or you could put each onto into a separate DLL and only load the DLL for the code path you're using.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!