Jump to content
  • Advertisement
Sign in to follow this  
CC Ricers

OpenGL Jumping back into DirectX, after 9 and XNA

This topic is 2119 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

Through my graphics programming adventure I've went in this order starting with immediate mode OpenGL (a little bit), then DirectX 9 first with the fixed function pipeline, then with custom shaders, then currently XNA for over a year, where I progressed a lot thanks to XNA abstracting away a lot of coding work. In total just over 3 years of 3D graphics programming. Now I've decided to take a jump into DirectX 11 to see if I can tame this beast.

I'm thinking about getting Frank Luna's book, Intro to Game Programming on DX11 but have a few concerns about it. Will the code only be optimized for DX11 hardware? I only have a DX10 compatible video card (Radeon HD 4670) which does great for the games I play. I know that newer versions of DirectX can support both DX 9 and 10 class hardware, but don't know if the code in the book would require a ton of re-work to get working right in my hardware.

Also, should I jump back with C++ or stick with C# and use SlimDX/Sharp DX instead? There don't seem to be many books on those frameworks.

Share this post


Link to post
Share on other sites
Advertisement
I'm biased, I'm using SharpDX myself, but if you're more comfortable with C# at this point, I say just go with SlimDX/SharpDX. They parallel the native libraries pretty closely, and the underlying pipeline concepts still apply, so I covered a lot of ground just reading native library books and tutorials and finding the .NET version of the same functions to get things working in C#. Both .NET libraries have samples in their downloads/repositories that give you a quick view of how the same graphics devices are initialized. And the HLSL is going to be exactly the same, so when you get into shader programming you can definitely use non-c#-specific references.

Share this post


Link to post
Share on other sites
You can run D3D 11 on D3D 10 feature level so there is no reason not to learn D3D 11. Some features are unavailable at that case, but it doesn't prevent you from using most of the D3D 11 stuff. Learning D3D11 from clean table is good since it has some differences compared to D3D9.

Cheers!

Share this post


Link to post
Share on other sites
Hi CC Ricers,

Don't worry, I'm doing the same as you. Re-writing my DX9 engine in DX11 on my laptop with an Radeon Mobility HD3650, using Frank Luna's DX11 book to help the upgrade. All I've needed to do with his code so far is to change the minimum feature level to D3D10, and change the effect files to compile the shaders as SM4.0 rather than SM5.0. I'm relatively early in the book with implementing all the demos, however they all work fine so far.

Cheers,

JMab

Share this post


Link to post
Share on other sites
regarding the books:
if you want to get an introduction into graphics programming using dx11 get luna's book.
if you want to get comfortable with the dx11 API get Practical Rendering and Computation with Direct3D 11.

Both books are really good, but the first one is more focused on learning graphics programming, than learning the API. I think the second one would fit your needs better.

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!