I had recently come across an interesting article which gave a nice guideline to learn the basics of 3D programming. This list got me thinking about how I would go about understanding 3D programming. Even though my list is similar to the list in the article, I would go about it differently. So without further ado, here’s my list to achieve basic proficiency in 3D programming.
Build your own custom graphic initialization function.
- This is useful to understand how things are managed internally and will give you more comprehension of what you are doing.
Code a 2D custom Graphic User Interface (GUI).
- This is useful since you can make your custom GUI controls and understand concepts like event handling and event capturing.
Implement a camera system.
- This is useful to understand concepts like vector handling, translation matrices, angle conversion, etc.
Understand primary 3D concepts.
Successfully make a collision algorithm.
Code a 3D model loader.
- This is useful to understand how 3D models are saved and how everything it’s drawn in a graphics engine.
Implement custom lighting.
Implement a small particle engine.
- This is useful to understand concepts like particle emitters, particle behaviour and billboarding techniques.
Learn the basics in a 3D modelling software.
- Without this knowledge, you will have to depend on other people to make the art for your first few games.
Load and play an animation.
Hopefully, this will help people getting started with 3D programming.
You can read the original article here