22

I want to learn DirectX in C++ programming. I decided to learn DirectX, so I found some tutorials online, but they all were very complicated and hard to understand. I have spent 3 days on a tutorial, and I have read everything, but I still can't even make an program that initializes DirectX. I think its very hard to learn that way.

Can anyone recommend a good tutorial/book?

Ajay
  • 18,086
  • 12
  • 59
  • 105
Janman
  • 1,030
  • 2
  • 12
  • 20

3 Answers3

19

The best resource I know of for learning DirectX is Frank Luna's book. It does assume you know C++. If you can get up to the chapter on the rendering pipeline and understand it, you're probably ready for DirectX. As for being hard to remember and complicated, this book does a great job of making sense out of the madness, and besides I don't memorize most of the structs used for initialization.

Jeff Linahan
  • 3,775
  • 5
  • 37
  • 56
6

Try XNA Game Studio, which is somewhat based on DirectX but a lot easier. (You need C# though.)

user541686
  • 205,094
  • 128
  • 528
  • 886
  • XNA is pretty easy to use, and would be a good start for 3D programming. However, if you're wanting to learn C++ at the same time, c# won't be good for you. – House May 05 '11 at 19:27
  • 5
    Because this doesn't actually answer the question, I think this should be a comment.. – alternative May 05 '11 at 19:34
  • 2
    It has been [deprecated](http://www.gamasutra.com/view/news/185894/Its_official_XNA_is_dead.php). – zionpi Jan 22 '15 at 02:34
  • 1
    @zionpi and subsequently picked up by the MonoGame project, existing XNA projects mostly work with MonoGame. – Pavel Jul 28 '17 at 23:23
3

just so you know you should understand what your reading when it comes to programming tutorials don't memorize. DirectX is basically a middle man between you and the hardware it lets you communicate with the hardware devices you're using like the graphics and video cards without having to know too much about them, but you should still have a good understanding of how they work before you try to create complex 3D Animations and such so if you're just starting off learn how to use the programming language and then start off with a simpler API or library like SDL, or Allegro for example DirectX is long and complicated and you should learn to walk before you run, :D good luck and happy programming

ANXIOUS117
  • 31
  • 1