Hey guys I wanted to learn DirectX/C++ so I could make Desktop/Metro Windows games, so I wanted to know where are some good online resources to learn C++ and DirectX.
Crossbones+ - Reputation: 2162
Posted 28 February 2013 - 02:22 AM
There's tons of tutorials and other resources to get you started. Unfortunately, I haven't had the opportunity to write games for Windows 8 yet (need a new PC/Laptop), so I can only give you links to things of that nature.
Before you get started, you'll need to download a compiler. For Windows, I recommend Visual C++ Express. Click here: http://www.microsoft.com/visualstudio/eng#downloads
After that, you need to download the DirectX SDK. This has all the tools, libraries and other things used to build DirectX games. http://www.microsoft.com/en-us/download/details.aspx?id=6812
Mastering C++ and DirectX usually takes lots of practice and persistence to gain experience. So always practice and try to learn as much as you can, but don't overwhelm yourself. It's important to learn at a pace that is best for you!
C++ primer for games: http://www.cprogramming.com/game-programming.html
DirectX 9 Tutorials: http://www.codesampler.com/dx9src.htm
DirectX 11 Tutorials: http://www.rastertek.com/tutdx11.html
Intro to DirectX for Metro Apps: http://channel9.msdn.com/Events/Build/BUILD2011/PLAT-766T
Hopefully these links will be of use for you!
"Yo mama so fat, she can't be frustum culled." - yoshi_lol
"One objection to a “critique of C#” would be that you can’t talk about C# without talking about the whole “.Net experience”. However, one can approach the topic of Hitler without a complete discussion of Nationalist Socialism, so I feel justified." - Steve White.
Members - Reputation: 331
Posted 28 February 2013 - 02:46 AM
I only make Windows Desktop games, but I've read quite a bit about programming for windows 8 as well. I've included some stuff you don't need to use right away, so don't feel like you need to know everything to begin with.
Rastertek is definitely a good tutorial for DirectX. The only problem if you want to make Windows 8 games is that it uses some libraries that are not supported (Direct3dx). You could certainly do what I did and just convert the code to use the new libraries. It might take a bit of time, but you'll learn something in the process. Converting this is maybe not the first thing you should do though.
If you want to follow the new direction by Microsoft you shouldn't use the DirectX SDK, but the Windows SDK. I believe it's included with Visual Studio 2012 express. This is required for Windows store games. There is some info about it here: http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275(v=vs.85).aspx
For a quick start on your windows 8 game programming, maybe you could try the recently released Visual Studio 3D starter kit. There is also a video giving you a quick tour. I haven't tested this myself, but it looks pretty good.
I would also check out the DirectX toolkit (http://directxtk.codeplex.com/) to make some things easier, like loading models, fonts etc. It's made by two DirectX devs and based on the code from Xna, and is quite well documented. There are also some samples included.
The toolkit also includes something called SimpleMath, which I would recommend you use. You should look into this once you get started on matrices/vectors in DirectXMath (The new math library used for desktop/windows 8). It will save you a fair bit of code and make things much easier to read.
Edited by Corvwyn, 28 February 2013 - 08:53 AM.