What to do next?

Started by
6 comments, last by Tomas Cokis 14 years, 10 months ago
I have nearly finished a book on c++ through game programming, the book teaches you the basics of c++ such as pointers, vectors, classes etc. The book is very good but all the programmes run in command prompt. I would really appreciate any advice on where to go next. I would like to go on to making simple graphics based games such as tic-tac-toe etc. I have been looking into SDL and have found it quite interesting. Lazy Foo's tutorials also seem quite good, would you reccomend theese or would i be best off buying a book and if so do you have any reccomendations? Any help is greatly appreciated. Deacon
Advertisement
SDL is a good next step. It's pretty easy to jump into. I don't know if there are any books on it, but tutorials should be enough to get you started. You should also take a look at some basic Win32 programming when you get a chance, since you'll need at least a passing knowledge of it if you want to move on to DirectX/3D.
The other thing to consider is SFML. I currently use SDL and OpenGL, but have been thinking about switching to SFML.

According to the designer, "SFML is a portable and easy to use multimedia API written in C++. You can see it as a modern, object-oriented alternative to SDL. SFML is composed of several packages to perfectly suit your needs. You can use SFML as a minimal windowing system to interface with OpenGL, or as a fully-featured multimedia library for building games or interactive programs."

Another thing to consider is that both SDL and SFML have python counterparts. So you can use these libraries with python too.

And, yes, LazyFoo's tutorials are very good to the beginner. I don't think a book is necessary. There are so many resources for learning online. Also, books usually aren't as up to date as the latest online tutorials and examples.
Before you jump into graphics I suggest you try to use the knowledge you've learned of C++ and apply them to a practical CLI game. Knowing how C++ works doesn't mean that you can properly apply everything.

I would recommend you do some reading on the basic STL containers as well. I wish I had used them earlier in the development of my current project. It would have saved me a great deal of time and headaches. Believe me, STL containers truly simplify many things.

If you're just not up for any CLI, I suggest SDL. It's thouroughly tested, lightweight and it works across many platforms. v1.3 is in the works now and it cleans up the API significantly. There are thousands of tutorials on the basics of SDL and more advanced techniques using SDL.

You should look up articles on GameDev about getting started with basic games. And by basic I mean truly basic games. Your first game is not going to be an RPG but it could be pong, a simple puzzle game, tetris, and so on.

It might be helpful to join a project that's established that's looking for beginners (or are at least willing to help steer beginners in the right direction).

Don't be afraid to fail. You may not even want to start with a game, just a number of sample programs that do various things. As you fail and learn or just learn, you'll be able to use that knowledge to allow you to build a functional game that may be fun to play. Even if it's not totally polished or the graphics are hideous, who cares? It's about learning.

Don't get caught up in the MMO fad or the fantasy that you can do whatever you want. You can't -- not at first. You're just starting off and it takes a lot of time to master the subtlies of C++ (you're going to hit every one of them on your way too, believe me). But, as you work with C++ you'll become more familiar with the language and you'll be able to more easily pick out the problems and pitfalls as you come across them (pointers are going to be a big pain in the ass so be prepared for those now).

I also wanted to note that you're studies aren't finished. You got through a C++ primer -- great! Now go out there and read on-line articles about more advanced C++. There's a lot to learn about. Don't be afraid to ask questions and look for good C++ programming sites with community forums (I personally like cprogramming.com but that just me).

Good luck!

-Lead developer for OutpostHD

http://www.lairworks.com

I'd just like to thank everyone who's replied, I really appreciate all your help. I have decided to finish off my book, read through it again to recap everything, then work my way through Lazy Foo's tutorials. Hopefully after that I will be able to make some games such as tetris or tic tac toe.
Quote:Original post by DeaconLinkhorn
I'd just like to thank everyone who's replied, I really appreciate all your help. I have decided to finish off my book, read through it again to recap everything, then work my way through Lazy Foo's tutorials. Hopefully after that I will be able to make some games such as tetris or tic tac toe.


You will [smile] I think a great first game, by the way, is Pong. It requires next to no art, but incorporates AI, collision detection, player input, frame-rate-independent movement... all things you'll need to know moving on. Plus it's kind of addictive [wink]
Quote:Original post by DeaconLinkhorn
I'd just like to thank everyone who's replied, I really appreciate all your help. I have decided to finish off my book, read through it again to recap everything, then work my way through Lazy Foo's tutorials. Hopefully after that I will be able to make some games such as tetris or tic tac toe.

That sounds good, remember to keep it balanced. You are going to want to program as much if not more than you read. The experience will help you out a ton and you will pick up on subtleties that cannot be taught in books.. like leeor said, you will run into every single one of them as you work on code, and in the end I believe that will be the difference between being capable of programming in the language, and owning the language :)
I recommend this link for SDL tutorials, its a bit like lazy foo's stuff, but.... Different. The both of them together cover most of what you'll need.

Aaron Cox's Tutorials

This topic is closed to new replies.

Advertisement