The road to 3D programming

I plan to write some posts that lead eventually to 3D programming, the kind done in games and demos. There’s no concrete series of posts, meaning you won’t find a clue from the title that it’s actually part of that plan. The reason is that there are all kinds of topics you could learn to be proficient in 3D programming. Having a set-in-stone series seems stifling…

Nevertheless, these are the topics I’m covering, in no particular order:

  • Basic colour theory, which I already did
  • Matrix operations
  • Viewports, eye/camera coordinates
  • Raytracing, rendering
  • Lights, diffusion, ambience, specularity, radiosity
  • Basic 3D modelling, vertex representations
  • Textures, mipmaps

I’ll probably add some more topics, and also remove some topics. Like I said, not set in stone. You’ve probably noticed some missing topics. What about music and audio? That’s why there are teams. I don’t know much about creating audio. I just use them (the code for using audio will probably be covered).

Instead of leading you through a series of posts, which ends with a finished product or game, I’ve decided to cover as much of the bases as possible. There are other sites covering finished products through a series much better than me. I want to cover topics leading to the finished product. This gives you flexibility in deciding what concepts you want to learn and use.

So if you have specific topics you’d like to be covered, add in a comment or contact me.