Sign in to follow this  

WinAPI and DirectX tutorials ?

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

Hello,

I have a problem. This problem destroying my desire to program games about 4-5 months already so it is time to do something :P . Im experienced enough in c++ programming ( I think ) though i never learned about C++ classes(LOL). The problem is that I cant find any - ANY - human-understandable book or site about WinAPI or DirectX programmin ( Im deeply depressed about that ). So when i find pretendent to be good it just screw up ( usually in Chapter 1 when I get into coding - LOL). So I please you, smart guys for advice. Point me to those human-understandable tutorials, books, sites ( Almost every programmers code was not easily understandable to me because he was trying to be cool and put no-need stuff in there like classes - Constructors, Destructors and more Pragma nonsenses. It is so LAME when you try to be cool in front of begginer who wants just to know the easiest way to do things and after that learn good programming practices :D )

Share this post


Link to post
Share on other sites
I used [url="http://www.winprog.org/tutorial/"]theForger's WinAPI Tutorials[/url] along side the [url="http://msdn.microsoft.com/en-us/library/ee663300(v=VS.85).aspx"]MSDN's Reference Library[/url] (which might take a little bit to learn to navigate but I find it to be pretty awesome). The tutorial is no nonsense meat-and-potatoes tutorial so you don't get any of the lame classes and whatnot :D It's written in C but it'll work with C++.

Unfortunately I have nothing for you for DirectX because I never learned it myself D:

Share this post


Link to post
Share on other sites
[quote name='Tank202' timestamp='1311626064' post='4840179']
though i never learned about C++ classes(LOL).
[/quote]

You definitely need to learn classes if you want to be anywhere close to a good game programmer or maybe even programmer in general. It took a while for me to understand the idea of classes, but once it clicked, it helped so much. So learn classes, then learn DirectX.

Share this post


Link to post
Share on other sites
I would say the same thing, DirectX is too much advanced (and WinAPI too ugly) to be learned by a beginner, especially if you don't know the language first. Learning object-oriented programming IS the base stuff you need to learn first nowadays. Learning to do things the bad way (harder) to re-learn the good way afterward? Bad idea.

Share this post


Link to post
Share on other sites
Drunken Hyena has fantastic tutorials for DX9 with WinAPI:

[url="http://www.drunkenhyena.com/cgi-bin/dx9.pl"]http://www.drunkenhy.../cgi-bin/dx9.pl[/url]

edit: at the risk of starting a flame war, if your looking to break into programming I would highly recommend you start with something like C#, and if your only interested in games you may want to consider Microsoft XNA.

Share this post


Link to post
Share on other sites
[quote name='Tank202' timestamp='1311626064' post='4840179']
Hello,

I have a problem. This problem destroying my desire to program games about 4-5 months already so it is time to do something :P . Im experienced enough in c++ programming ( I think ) though i never learned about C++ classes(LOL). The problem is that I cant find any - ANY - human-understandable book or site about WinAPI or DirectX programmin ( Im deeply depressed about that ). So when i find pretendent to be good it just screw up ( usually in Chapter 1 when I get into coding - LOL). So I please you, smart guys for advice. Point me to those human-understandable tutorials, books, sites ( Almost every programmers code was not easily understandable to me because he was trying to be cool and put no-need stuff in there like classes - Constructors, Destructors and more Pragma nonsenses. It is so LAME when you try to be cool in front of begginer who wants just to know the easiest way to do things and after that learn good programming practices :D )
[/quote]


hey!!
I'm starting a blog about directx 11 where I'll be posting step by step video tutorials for learning directx. [url="http://makeagame.tumblr.com/post/8254933680/overview-of-directx11"]http://makeagame.tumblr.com[/url]

Share this post


Link to post
Share on other sites
Beginning Directx 9 by Wendy Jones and Beginning Game Programming 3rd edition by Jonathan s. Harbour are some books you can try. Yes they dont like much on the outside and inside by they'll get your foot in the door. The source code in these books (which you can get from the cd or download) is very easy to read. Introduction to 3D Game Programming with DX 9 by frank D. luna is another book that you can use for reference as well. The only problem I had with that book is the source code is little to complicated for me to understand. But it has information that the two books I mentioned dont have. Finding DX books is frustrating. If you go to amazon or barnes & noble DX books are scarce. Ive only seen one book for DX 10 and 11 by the same author.

Share this post


Link to post
Share on other sites
I suggest you visit this site. From what I've seen of it, it's a good place to start learning DirectX and WinAPI.
[url="http://www.directxtutorial.com"]www.directxtutorial.com[/url]

Share this post


Link to post
Share on other sites
[quote name='Aluthreney' timestamp='1312108900' post='4842798']
I suggest you visit this site. From what I've seen of it, it's a good place to start learning DirectX and WinAPI.
[url="http://www.directxtutorial.com"]www.directxtutorial.com[/url]
[/quote]

Be warned, that site doesn't check for errors during run-time. If something messes up, you won't know if it's your coding or if DX didn't initialize, etc.

Anyway, I would say first off just learn the basics of WinAPI. If you're planning on programming basic games, you'll only be using the basics (i.e. making a window and message handling).

Also, choose which DirectX you want to learn. There's a subtle difference between DX11 and DX9 (and DX9 has a lot more tutorials). You might want to choose DX9 because it runs on Windows XP, while DX11 only runs on Vista and 7 (there's really no advantage DX10 has over DX11)

As for resources, I'd recommend the Sample Browser that comes with the SDK. You'll need Visual C++ Express for the provided examples (it's free to download and register). Another thing you might want to take a look at is the Documentation for C++ (which also comes with the SDK)

Along with the drunken-hyena site (linked above), there's also two-kings.de and riemers.net. You'll also want to be looking up concepts as you learn about programming, which you can just Google.

And if you don't know classes...well, there goes the point of programming in C++.

Another thing....I'm a sheep.

Share this post


Link to post
Share on other sites
[quote name='StuffStuffAndMoreStuff' timestamp='1312156725' post='4842947']
You might want to choose DX9 because it runs on Windows XP, while DX11 only runs on Vista and 7 (there's really no advantage DX10 has over DX11)
[/quote]

Unless the OP only has XP to use this is unimportant.

XP, and thus DX9, is utterly dying in market share now; by the time the OP has enough of a grasp as to do anything they might want to release to a large audience Win7 will be common enough. The fact that Battlefield 3 is DX11 only will help see to that. Hell, by the time the OP is ready chances are we'll have moved on at least one DX version anyway.

Let XP go, there is no advantage to pandering to it if you are only starting to learn NOW.

Share this post


Link to post
Share on other sites
Well thaks for everyone advices :D. I am happy that here are a lot of smart and friendly people. My conclusion to this topic would be - I need to learn finish learning classes and preprocessors then i should do some winAPI programming and then ill try to jump into very basic Direct2D projects after that i think it will be easy to learn DX11, DXSound, DXInput.

I already understood that ugly WinAPI (basicly) and i think i can start making simple apps :D.

Again thanks for your opinions, advices and good luck :D

Share this post


Link to post
Share on other sites

This topic is 2330 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.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this