user2601285
user2601285

Reputation: 11

directx 9 with visual studio 2012 express

I decided to learn directx on my old laptop that has an ATI Radeon X1200 card. Using the program GPU-Z.0.7.2 I found that my card support directx 9 /SM2.0 and has shadrers of 4 Pixel / 2 Vertex. Using dxdiag on my windows 7 I found that directx version is directx 11. Then I downloaded visual studio 2012 express but I did not install it yet. Since my card supports only directx 9 im going to read the book Introduction to 3D Game Programming with DirectX 9. Now what version of the direct SDK do I have to download ? and after downloading the SDK what should I install first the SDK or visual studio 2012 express ? Is the book ok ? I mean there are other editions of the book but they supprt directx 9c , directx 10 and directx 11.

Thank u so much.

Upvotes: 1

Views: 2162

Answers (4)

Drop
Drop

Reputation: 13003

  • If you not targeting Windows XP or earlier OS, throw DirectX 9 book, forget it (same with DirectX 10 if you not targeting Vista without Service packs), and take DirectX 11 one
  • Luna's books are great, but, IMO, online tutorials that zdd mentioned are better. And free. But still, to write something cool, you will need to read much more than one book or one series of tutorials. Take the best parts and mix it!
  • You can develop with DirectX 11 API (for Windows Vista SP2 and later OSes), but still targeting DirectX 9 hardware (feature level 9.3). Shaders is a must. Love them!
  • When you installing Visual Studio 2012 or higher, you also get a copy of Windows SDK. Do not install standalone DirectX SDK, because it is obsolete. Since Windows 8, DirectX SDK is a part of Windows SDK. Install standalone DirectX SDK only if you really-really need that old stuff, such as D3D11X or effects framework (for Luna books).

Happy coding!

Upvotes: 0

zdd
zdd

Reputation: 8727

Using dxdiag on my windows 7 I found that directx version is directx 11.

This is the DirectX runtime version, not SDK version. so it does not matter which version of SDK you use to develop your program.

As others said, the installation order does not matter.

The book you mentioned is good for new starters. but I recommend you to start from the shader version, since fixed pipeline functionalities such as transforming and lighting was abandoned start from DirectX 10, they all moved to shaders, there is a shader version of that book.

there are lots of materials and resources to learn DirectX, I paste some pages for your reference.

http://www.directxtutorial.com/LessonList.aspx?listid=9

http://www.braynzarsoft.net/index.php?p=DX11Lessons

http://www.rastertek.com/tutindex.html

DirectX SDK examples are also very good choice.

Upvotes: 1

NmdMystery
NmdMystery

Reputation: 2868

The Microsoft DirectX SDK (June 2010) contains both DirectX 11 and DirectX 9 headers and documentation. The install order doesn't really matter (I've used the SDK in Code::Blocks before installing Visual Studio and it worked fine) since it's really just a collection of header files and debug dlls, plus a bunch of stuff to get you started.

Personally I don't use books when learning a library - I look at the documentation, which is a firsthand explanation of the material, or search up a tutorial (though you should take anything you read in a tutorial with a grain of salt). There are also several websites and videos that explain the graphics pipeline really well. I can't really comment on the book otherwise.

Upvotes: 0

Drew McGowen
Drew McGowen

Reputation: 11706

You should be able to use Direct3D 11 whilst still targeting a Direct3D 9 device via the D3D_FEATURE_LEVEL enum, which you can specify in your D3D11CreateDeviceAndSwapChain.

Upvotes: 0

Related Questions