Going to begin game programming with C

Discussion in 'Game Development General Discussion' started by Ho-Oh.x7, Aug 25, 2012.

  1. Ho-Oh.x7

    Ho-Oh.x7 Member

    Aug 25, 2012
    Likes Received:
    I have decided it is time for me to begin game programming. I have started reading the book "The C programming language". I aim to get good enough to make quality SNES games then go to the Gameboy and Nintendo 64. It looks to me like the best way to reach this goal is to start on the PC then get on the SNES. Romhacking and hardware modding are other goals of mine, but programming comes first.

    What I'm after is advice from more experienced people such as good compilers for a 64 bit PC, books and tutorials to read and of course your opinion on this approach.
  2. guster11

    guster11 Spirited Member

    Aug 17, 2012
    Likes Received:
    I use codeblocks for any work in c/c++. Also the older consoles are very very complex to write anything for and there isn't much in the way of how to's anymore, so spend a lot of time working with the basics on modern computers first. But for learning mostly any modern launguage alongside with a book or two using this guy should be a bunch of help. Learned a lot of python, C++ and java from him.
    Last edited: Aug 26, 2012
  3. derekb

    derekb Well Known Member

    Jan 7, 2009
    Likes Received:
    Goodluck, as stated above coding for the older consoles is much more complicated than modern games simply because there is much less available documentation, plus operations which are trivial nowadays take more work to accomplish within the boundaries of the platform
  4. marshallh

    marshallh N64 Coder

    Mar 16, 2006
    Likes Received:
    Start with some SDL examples

    Seriously, console coding sucks and you're only going to punish yourself unless you start on PC where you actulaly have good documentation
  5. Calpis

    Calpis Champion of the Forum

    Mar 13, 2004
    Likes Received:
    Compilers: VC++, gcc/g++
    Tutorials: it doesn't matter, just read everything you find until you have the basics, don't waste money on books (K & R I guess is an exception), from there Google is your friend

    This isn't what you asked for but here's my advice: don't get ahead of yourself this early on. First learn the language in and out including pointers, double pointers, function pointers through command-line apps. At this point you can probably make a really static and boring game, personally I wouldn't waste the time. If your goal is to make console-quality games then it's time to study HL languages where you can be exposed to data structures and the object part of object oriented programming and basic algorithms. Hopefully you'll never stop learning, but at some point you'll have accumulated enough ability to make an engaging game. It's at this time where you want to go back to C and implement your own structures, game objects and algorithms.

    As for the console programming and ROM hacking (what scope?), console modding, that's all doable, but you're being overambitious unless your standard for "quality" is quite low. Making multiple commercial-grade SNES games is not a walk in the park, one will be difficult enough over a years time if you have to create all the game assets yourself, and that's assuming you're already a productive low-level programmer. With N64 you'll have the benefit of programming in C (but you'll have to learn 3D graphics, the graphics architecture, the APIs and some signal processing). For GB and SNES you'll have to learn two assembly languages (actually three because the SNES has a sound processor) and about CPU architecture in general, about their video controllers and their constraints, programmable sound generators and composing for them...

    Yeahhhh, realize that this is a very long term plan. Hopefully you'll grow out of ROM hacking and console modding and onto more constructive endeavors; I hope that you have the commitment to finish a quality game for any console mentioned, though I expect you'll sooner or later you'll realize your time will be better spent somewhere where there's a higher payoff. Know that the odds are very much against you, take everything one step at a time, don't give up basically.
    Last edited: Sep 13, 2012
  6. Trenton_net

    Trenton_net AKA SUPERCOM32

    Apr 13, 2007
    Likes Received:
    In my humble option, general programming and game programming are totally different things. I wouldn't even start to look at game programming until you became totally proficient in regular programming. That is, when you reach a point where programming a new language is simply learning different syntax for you. I've known loads of people who have general app/programming experience, but have no idea when it comes to video game design, solutions, or concepts. Collision detection, Double buffering... They have no idea about that.

    Now I'm not saying it's impossible for you to learn all this, but it would be exponentially harder to do so while at the same time trying to pick up general programming concepts.

Share This Page