Best way to get into game programming?

Pages: 12
Hey all,

Been on the forums for quite a while and posted myself quite a few time. At the moment, I have just been trying to learn SDL by using the Lazy Foo tutorials however, I am finding these quite hard to completely learn and understand to the point where I am just copying everything to try and get it into my brain. Previously, I have learnt the basics of C++ from 'the new boston' on youtube (got to his 40th video),'C++: A Beginner's Guide, Second Edition' and also, just for cross referencing, 'C++ for dummies'. If I would like to eventually get into game programming, such as making a basic maze game and building up from there, would you suggest I keep going at SDL and hoping it should click or should I take a step back and continue making basic text based RPG's using the console in order to practice things such as classes and input/output of files?

Thanks all.
I don't know those video tutorials, but it sounds good to get a basic feel for all things C++. My take on learning a subject as C++ can be (especially with game programming in mind) is to set yourself real programming projects that are doable but at the same time will push you to learn new techniques. So, if there is 3D graphics in your project you will be getting started with OpenGL. Just start small and build on continuously working code. Don't write any code till you have a plan in your head. You will find that as you need new functionality you will remember it easier because you found it out yourself without tutorials. I hope you know what I mean.
or should I take a step back and continue making basic text based RPG's using the console in order to practice things such as classes and input/output of files?


Don't do this. You can practice all those things in a game environment just as easily as you could in the console environment.
Thankyou guys for your help.

Ah ok, I will start by trying to just get the basics down for a very simple maze game and then going on from there such as adding a timelimit and so on. Sound like a plan?
It does indeed! Will your maze game be 2D aka Packman, or will it be 3D? Both present different problems, how to represent the maze layout, what huristic will you use for your "monsters", how will you draw your viewport? Etc.. Sounds quite fun.
Good Good :D

At first, especially because I am not experienced due to being busy at school, I hope to just make a very simple maze game in 2d with just blocks and then move onto gradually adding things such as a score and teleports to make the maze harder. Then, I hope to add simple AI and turn it into a top down 2d corridor shooter.

As you can see I am just going to get a base and then gradually expand onto it :D

What projects are you currently doing?
I'm also starting small, my C++ is quite rusty after about 8 years of not using it. So I will just set myself short projects that I can do in a day or so. My first little project might be to do an Xclock look alike, then I might try a simple microprocessor emulator, then I may do some math stuff like fitting large non linear models using Monte Carlo techniques.
Wow man that sounds like some pretty cool stuff that I cant even get my head around. If you dont mind me asking did you study computer science at University, as that is what I want to do?

I hope one day I will be able to get to your level.
I know I'm not OP, but I have the same thoughts.

I've started with SFML which appears to be a good intro to 3D stuff as it introduces OpenGL, but if I wanted to start with 2D games (such as a remake of Microsoft's Minesweeper) would it be better to go with something else?
You could check out:

http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition.aspx


It covers creating a basic Pong game using C++, while also being a bit of a primer on C++ and goes into more depth than most tutorials. That said it's long, easily the worlds longest pong tutorial, already up to 7 parts and still nowhere near complete. Already though, it covers a lot of what you would need to know, the game loop, input handling, basic animation, world manager, etc...

It assumes a basic knowledge of programming, but hopefully is useful.
I tried both and then concluded with SDL simply because of the lack of documentation and tutorials with SFML.

Have a look at these tutorials for SDL: http://lazyfoo.net/SDL_tutorials/index.php

These are what kept me with SDL as well as how it is much easier to install.
@Serapth

I just looked at the tutorials and I must admit they look very good however, I have already started with SDL and so would prefer to stay with it.

Thankyou though :D
Yes - I did Scientific computing at NYU way back in 1991 basically putting science problems onto the computer, used C and FORTRAN and Assembly language.
I would say doing "remakes" is a great way to go as a working bit of software is a great problem statement. Half the problem in computing is understanding the requirements, or what is this program supposed to do. If you have a working program to copy or mimic then the problem just becomes a pure software engineering exercise.
Don't worry - you guys will go way beyond me, what I do sounds hi-level but it's just because it's heavy on math, I am really not that good at C++, I bet you guys could run rings around an old fart like me. Where I'm better than you is in writing code that "business people" can more or less read - my main() should read like a recipe for cup-cakes not look like a plan for a rocket engine.
jefw123 wrote:

I tried both and then concluded with SDL simply because of the lack of documentation and tutorials with SFML.


Umm... Have you ever even been to the SFML website?! Seriously!!
http://www.sfml-dev.org/documentation/2.0/ Is all you need to learn version 2.0

http://www.sfml-dev.org/tutorials/1.6/ Easy to follow tutorials, however some won't work with version 2.0 A quick search in the 2.0 docs would fix those cases in a snap, however.

@Stewbond:
SFML is a wrapper for OpenGL, designed for 2d games. Wrapping OpenGL provides cross-platform hardware acceleration for rendering. SFML is the perfect place to start for 2d games.
@ModShop:
Good to know I'm starting in the right place. Thanks! Now if I could only compile...
a142763 wrote:
my main() should read like a recipe for cup-cakes

Speaking of which...

http://en.wikipedia.org/wiki/Chef_(programming_language)
Umm... Have you ever even been to the SFML website?! Seriously!!
http://www.sfml-dev.org/documentation/2.0/ Is all you need to learn version 2.0


All I am saying is that is pretty much the only page of tutorials and then it just leaves ypu in the dust with a list of classes. It is just a bit easier to learn SDL in my opinion.

Yes - I did Scientific computing at NYU way back in 1991 basically putting science problems onto the computer, used C and FORTRAN and Assembly language.


Wow sounds extremely interesting, that is the kind of thing I hope to do however, just need to work hard at my GCSE's :D

Now if I could only compile...


Setting up SFML is one of the problems I ran into as well....
Hey Jefw123, sorry to be going so off topic but I take it your doing IT for GCSE's? I had considered that myself but ended up not doing it cause I didn't have enough subjects(done technology and design instead). How do you find the course? I had read this
http://www.bbc.co.uk/news/uk-14683133 a while back and remember being annoyed that so many kids seem to be missing out at a proper chance of a career in software development as a result. Just wondering what your thoughts were if any?
hey MeerKat,

Unfortunately my school does not do IT however, I have heard this it is a very boring course that doesnt even touch on programming but, more like playing around with word and so on. For Computer Science at University, they do not care about having an IT GCSE but instead about maths and maybe physics as they are the closest to Computer Science that you can get.

Here is some of the stuff that they do in the course: http://www.bbc.co.uk/schools/gcsebitesize/ict/

In my opinion it doesnt look very good.
Last edited on
Pages: 12