How do u learn directx?

Started by
5 comments, last by Armadon 17 years, 6 months ago
Hello, currently im trying to learn directx. But my problem is that, there are sooooo many functions and classes to remember, and i just cant remember them all. Ive read the whole directx c++ tutorial at riemers.net, and surprisingly i still dont even know how to register the device.. I mean, i understand it, i just cant remember all the methods i have to declare to use it. So now, im wandering how did u guys learn it? And how do you guys recommend me learning it. Do i have to copy the same example code to draw a triangle 50 times until i finaly memorize it? Or is that just not important, since you can use directx templates that do all the basic stuff for you. Please help, im desperate on learning this thing. My primary compiler is the visual c++ express edition compiler (Also have dev-c++). And i use the latest version of directx sdk.
PurpleBoxMobile.com My mobile app publishing startup
Advertisement
Personally, I just write my own wrapper once and work with that.
Ramblings: http://ivan.rusted.se
Quote:Do i have to copy the same example code to draw a triangle 50 times until i finaly memorize it?


Yep, thats how I did it more or less. The documentation that came with the SDK should be your best friend while you learn it. At first, you will have to look everything up, but overtime you'll gradually learn the calls you use the most. Personally, I've used DirectX for over three years now and I still couldn't tell you all of the presentation parameters from memory. So yeah, just use the documentation alot.
I don't bother memorising any API's I use. Given enough practice I tend t start remembering most of it, but I have never sat down and copied out code 50x in order to memorise every part of it. To be honest, that strikes me as a complete waste of time [smile]

My preferred method is to go from the theory and concepts - understand the resource model, the pipeline, the maths and the rest will follow. If you understand the concepts then you'll be able to jump to Direct3D 10 (for example) with little difficulty - you won't be completely stumped because the code looks different.

I suppose it's a case of learning semantics or syntax.

You might find this FAQ entry of use, it also references a thread with lots of discussion about peoples approach to learning DX.

hth
Jack

<hr align="left" width="25%" />
Jack Hoxley <small>[</small><small> Forum FAQ | Revised FAQ | MVP Profile | Developer Journal ]</small>

Quote:Original post by jollyjeffers
My preferred method is to go from the theory and concepts - understand the resource model, the pipeline, the maths and the rest will follow. If you understand the concepts then you'll be able to jump to Direct3D 10 (for example) with little difficulty - you won't be completely stumped because the code looks different.


*nod*, this is definetly much more productive the memorizing the thing. It's just like in school, there're different ways to pass tests, you can either memorize the definitions by heart, or you can understand the larger underlying concept and ultimatley be able to explain it in your own words. Which would be better?

I always say it's better to know how to know then it is to know.

(you think there's any chance of that being turned into a furtune cookie thing?)
[size=2]aliak.net
Quote:Original post by Squirell
Quote:Do i have to copy the same example code to draw a triangle 50 times until i finaly memorize it?


Yep, thats how I did it more or less. The documentation that came with the SDK should be your best friend while you learn it. At first, you will have to look everything up, but overtime you'll gradually learn the calls you use the most. Personally, I've used DirectX for over three years now and I still couldn't tell you all of the presentation parameters from memory. So yeah, just use the documentation alot.



Not by copying, but by modifying actual code that uses it. The SDK contains many samples of many of the different things that DirectX can do. I started using DirectX about 5 years ago and did a fill game engine using it and then proceded to forget alot of the specifics (but not the ideas) while doing ALOT of other programming. In that time they revised DirectX twice. You need to learn how to find what you want done in the DirectX Documentation (and also Online) as you wind up doing different things for each project anyway.

The SDK samples show how to do many basic features and mutating them to do something different will probably make for more effective learning. Other samples can be found online (like if you want a more streamlined core program structure than the generalized one that the SDK samples use.)

I started off with a motto.
Get something running, fix it until it works well.
It's nice to get something up and running, taking a step back and realize what you have done. Then move forward and doing the same, I learn in an iterative pattern. Build block for block and don't try to leap bounds.

I took some advice from the guys on these forums and just sat through a couple of nailbiting sessions and read through the SDK docs. These docs are really your friend and together with this forum is really all you need.

take a look at this post

I hope this helps.
Take care.

This topic is closed to new replies.

Advertisement