Need advice on where to go next
Members - Reputation: 100
Posted 29 June 2011 - 04:11 PM
I'm not expecting to make the next Call of Duty or Minecraft.
Moderators - Reputation: 17388
Posted 29 June 2011 - 04:18 PM
It really depends on a lot of things; how much time you have, how much aptitude for programming you have, how much effort you're willing to expend before you see results, what kind of results you expect in the first place...
Just pick a technology that looks cool, and run with it, unless you have really specific goals (in which case it'd help us to know what those goals are).
[Work - ArenaNet] [Epoch Language] [Scribblings] [Journal - peek into my shattered mind]
Members - Reputation: 100
Posted 29 June 2011 - 04:26 PM
Members - Reputation: 96
Posted 29 June 2011 - 06:44 PM
I think I'll take your advice and just play around with everything for a while to see what I like and what fits my needs. Since I've already started C++, it seems like a good idea to try it first, no?
I'll throw my half cent in here. If you already started C++, you're probably best to keep going with that. When I asked a developer friend of mine (not game developer, just a guy making apps for schools) what I should learn with my goals in mind, he recommended C++ because "Learning C++ will make learning some of the others easier." I myself know almost nothing, but I take his advice because he's really good at what he does. Of course, he's also one of those people who has always had an intuitive grasp for programming, so when he says it might make it easier I have to wonder if that's coming from experience, or from him just picking things like programming up (Am I jealous? Maybe a bit ) But anyway, that's my half cent, take it with a grain of salt, as it's coming from someone who is still in the learning phase (Beginning programming with C++ for dummies!) himself.
Members - Reputation: 259
Posted 29 June 2011 - 07:06 PM
cprogramming.com has tutorials that provide an excellent introduction to C and C++ programming (note: C++ is a superset of C; most C code will compile with a C++ compiler and run, with only minor modifications (dealing with C++'s strict typesafety, for the most part)). I learned using these tutorials myself, although I now own a reasonable number of books about specific areas of programming.
If you've been fiddling with Python for a few years now, I'm sure you've realized that the most important part of learning to program is not in reading, but in practice. C and C++ are (comparatively) low-level languages with many useful tricks that you'll only learn how to properly use through practice and experience.
You can get a C++ compiler and IDE (integrated development environment, convenience tools for programmers pretty much) for free. Microsoft offers the newest version of Visual Studio Express, and in the open-source world I highly recommend Code::Blocks with MinGW (what I personally use).
As for what API to use, I recommend steering clear of system-level APIs for now. Not only are these significantly more complicated than higher-level APIs like Irrlicht or Ogre, but there's very little benefit to be gained from using them over the stated alternatives. Generally speaking, games only need the common feature subsets provided by the mentioned APIs (as well as many similar APIs). The open-source world contains several useful libraries that you can make use of to minimize your development time, especially if you are using C++.
C++ programming will be harder to get into than Python, but ultimately more rewarding.
PS: If you're interested in making games for XBLA as an indie developer, your best bet is actually C# and XNA Game Studio. The same is true with Windows Phone 7 games. For Android, Java is your best bet. For iPhone, you'll need Objective-C.
PSS: Unity is a very expensive investment if you want the full feature set, $1500 for Pro (PC) and another $1500 each for iOS Pro and Android Pro.