Allow me to elaborate on some of what I said above (as if that weren't enough already).
It is prerequisite to games programming that you first learn the language(s) in which the games will be written, and then how to write programs that work using the OS that it is written for. This is obvious, but should not be understated.
I will assume that you are writing programs for Windows XP, and DirectX 8 or higher, as you stated earlier. I will also assume that you mean to use C++, as you stated earlier. I will finally assume that you do not currently know much C++, and that you have never learned any other language before.
So the first step is to learn C++. How long it will take to learn C++ depends on yourself, but unless you are very fast can count on at least 4 to 6 months at least to learn the basics of the language. For a first time programmer, this will be more towards the latter than the former, even assuming a crash course study program.
To learn enough of it to do anything productive in it will take at least another 3 to 6 months. :-\ It should be noted that most Universities offer C++ over two semesters, and even then they rarely dig very deep into the language, but I am assuming that you can learn faster on your own.
Your choice of study material is critical in this; however, since everyone learns differently, a blaknket recommendation of a textbook and references are probably pointless. My own preferences are for The Waite Group's
C Primer Plus and
C++ Primer Plus as starting text followed by
Bruce Eckel's
Thinking in C++ for more advanced study, with O'Reilly and Assoc.'s
C++ Core Language as a reference. YMMV. I would also mention that the
GameTutorials.com web site has tutorials on the basics of
C and
C++ as well; while they do not constitute a full course of study by themselves, they do serve as good examples of the important concepts.
If you take the time to learn another language first, you will probably save more time in learning C++ than it took to learn the other language. For example, it would generally take less than a month to learn
Python (
this tutorial does a good job of starting things off; after that, try
Thinking in Python as a possible study book), but it would easily cut your time in understanding C++ down by two or more months.
Scheme (as taught in
this book) takes less than a week to understand well enough to program in, and would save about a month in learning time (it is
very different from C++; however it teaches you some very interesting things about programming, and it would mean you could learn Python faster). Assembly language would take perhaps three months using
Assembly Language: Step by Step, but reduce the time for understanding C++ by two; if you mean to do some serious 3D rendering, then you'll want to know some assembly programming anyway, so this is highly recommended.
So, my suggestion is to pick up a bit of
Scheme quickly, then go through some scripting language like Python or Perl, then, if you can get a copy of
AL:SbS, learn the basics of assembly. You'd have spend perhaps 5 months, but you now should be able to learn a useful amount of C++ in three, saving 1-2 months of overall study time,
and you'll know four languages, not just one.
Getting a reasonable grasp of general Windows programming will probably take another 3 months, or more.
At this point, you've probably got close to a year of programming under your belt. Good. You will probably spend at least another year at game programming before you can really expect to see results (as described in the early posting), and several more at it to get
really good at 3D work. HTH.