I'm in high school and taking a class where basically we design our own course and choose what we learn. I've chosen to learn about C++ and game programming.
I'd like to learn as much about using C++ with OpenGL or DirectX or some other API as I can.
After I finish learning C++ where should I go? Can you recommend a book on game programming?
If you have a good grip on C, then you can go on learning other programming languages like Python, Java, JavaScript. Nowadays, R programming language is also used by many top companies.
Originally Answered: What can I do after learning Basics of C? Practice by studying some existing free software coded in C and by contributing to it (I recommend installing and using some Linux distribution on your computer, since it is mostly made of free software; you'll also find many of them on github & sourceforge.
Despite the prevalence of higher-level languages, the C programming language continues to empower the world. There are plenty of reasons to believe that C programming will remain active for a long time. Here are some reasons that C is unbeatable, and almost mandatory, for certain applications.
Saying that you think you know most of C++ reminds me of when I said I thought I knew most of Java. When you find yourself saying things like that about languages you haven't used for 8+ years, you've slipped into a bad comfort zone. Stretch yourself. A lot. Read a book about the language. You'll be shocked about everything you don't know.
While I don't have good advice about game programming, I can tell you that as a programmer, you should absolutely tackle the fundamentals first, full force. For me, that means reading Code Complete, GoF, and anything by Martin Fowler (Not just once, but several times). It also means stretching your knowledge of technologies through toy projects.
Then you can do whatever it is that you want, and do it well.
The only way to learn how to make games is by making games. I've always heard this as a suggested order:
Of course I mean "games of that type" not exact clones. The idea is that you parallel the evolution of video games by moving from single screen games to a scrolling screen game. Also, the concept of AI is introduced halfway through. You mention that you are learning OpenGL -- I would start with 2D games first since the assets are easier to create and the details of a 2D graphical engine are much simpler. There will be less time spent on "video", and more on "game".
After you finish the first four little projects, then start thinking about how you would make a game in the Doom genre.
Unfortunately there are no "obvious" books on game programming like there are on general programming (Knuth, Wizard Book). Of the ones I have read, I most enjoyed the "Game Programming Gems" series which contains little snippets of ideas for you to absorb into your games.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With