Where to start game programming

Started by
17 comments, last by tufflax 14 years, 6 months ago
Hi im 15 years old and am an avid PC gamer I am interested in learning how to program and maybe make a small game, im not sure if this is my cpu of tea per se but am interested in learning, I don't have very much money so I can't buy a lot of programming software and I am also interested what its like to be a game programmer?
Advertisement
If you are seriously considering the profession, then this is a good place to start! I've always read the topics but never registered until today actually.

There is a whole forum dedicated to the beginners of the profession (Which you found!). I'd start there.

You can download express versions of nearly everything that Microsoft makes to get a start as well. http://www.microsoft.com/express/

Google is also your friend for finding tutorials!

Game Dev isn't something that you wake up one day and decide to do. It takes a lot of work to make a game from scratch. But if you're willing to put in the time and effort to overcome all the hurdles, it can be a very rewarding process.
The Forum FAQ is a good place to investigate these questions.

Ideally, you'd want to get a solid basis in programming first, then start making simple games, and iteratively make more complex games as you get experience. For example, a beginner might follow this path:

1) Learn basic programming concepts (functions, branches, loops, text)
2) Make a simple guess-the-number game
3) Learn more complex concepts (OOP, etc)
4) Make Tic-Tac-Toe and some text adventure games
5) Learn 2D graphics
6) Make Pong and Tetris
.... and so on ....

You will want to pick a programming language that is both conducive to learning and powerful/flexible. The FAQ outlines programming languages and free editors/compilers. Popular suggestions on this forum are Python and C#.
When I jumped into Game Dev, I already had a previously knowledge of C++ programming, and before I even got into that I had already programmed quite a bit in QBasic and a few scripting languages (lots of HTML and Game Maker Language)

Something you might find helpful is the following article: http://lazyfoo.net/articles/article01/index.php

The very very first thing you should ever do is spend a lot of time learning the language of your choice. The industry 'standard' is C++, and a lot of people use it, that is by far the best choice BUT for your purposes, something else like C# might be better. With C# you can use XNA Game Studio or there are several other things such as BlitzBasic and Dark Basic, but I recommend C++

After you learn C++, it should be pretty easy from there, you can find a library or something, or just program in DirectX or OpenGL or something directly.
--Dbproguy - My Blog - Tips, Opinions and Reviews about C++, Video Games, and Life
Okay so which one should I start with C# or python because I am just testing the water to see if I enjoy this? Which is simpler to learn?
Quote:Original post by Okin
Okay so which one should I start with C# or python because I am just testing the water to see if I enjoy this? Which is simpler to learn?


It differs depending on who you talk to. I prefer C#, but a lot of people here prefer Python. You might want to take a quick look through the links to both and see which one looks better to you. At any rate, its not something that I can definitively answer for you.
Well I would start with java if I were you (Google for "Eclipse IDE") Eclipse is a GREAT software development kit, which you can download for FREE. Learning Java will teach you a great way to base your games: Object Orientation. This is because Java=Object Orientation (OO for short). After coding in java for a while (you can also make java games) you should move onto c++. C++ is a really flexible and powerful language, and is almost identical to java (java was based on c++, and is catching almost as fast).

Start with simple command line programs and games (you'll see what I mean when you start), like the famous "Hello World!" program. Then, move on to guessing games, and maybe then text-based RPG's. After that, you should go on to java2d. and GUI programming. Maybe after a year or two of java you should move to c++. C++ and Java are two of the most popular languages out there, and Java is much easier than c++. So Good luck Okin. I started 2 and a half years ago, and of course there were times where it was really boring, but programming always comes through. Especially with a great game idea.

edit: well c# is basically java, except windows only, less popular, and in general worse. Python is easier than c#. But you can also try a 30 day flash trial period, however I've never gotten that to work for me. For trial purposes I'd try python.
Quote:
Java will teach you a great way to base your games: Object Orientation. This is because Java=Object Orientation (OO for short).

Many other languages support OO paradigms, among them Python, C#, C++, and so on. It's also worth noting that OO is not the be-all end-all development paradigm. Java is still a good language to consider as a first language though, along with C# and Python.

Quote:
well c# is basically java, except windows only,

Wrong (see Mono).

Quote:
less popular

Irrelevant, and suspect.

Quote:
and in general worse

Subjective.

Please refrain from spreading fear, uncertainty and doubt in my forum.
Quote:Original post by Phynix
Well I would start with java if I were you (Google for "Eclipse IDE") Eclipse is a GREAT software development kit, which you can download for FREE.


I don't know how this is relevant in regards to C#. C#'s main editor, Visual Studio, is also free (look up Visual Studio C# 2008 Express). Its also considered to be an excellent SDK.

Quote:Original post by Phynix
edit: well c# is basically java, except windows only, less popular, and in general worse.


As jpetrie pointed out, your assessment of C# is suspect. Most developers I know who have experience with Java and C# greatly prefer C#. Which you prefer is rather subjective.

At any rate, Java is also a good programming language to look into. I recommend C# over Java mainly because Microsoft provides some excellent tools for game development in the form of Visual Studio and XNA.
Quote:Original post by Okin
Okay so which one should I start with C# or python because I am just testing the water to see if I enjoy this? Which is simpler to learn?


I don't have a ton of experience with Python, but I do have lots of experience with C#. I would hazard a guess to say that Python is probably the easier of the two. The .NET framework is powerful, but it takes a lot to fully understand it, particularly if you are new to programming.

This topic is closed to new replies.

Advertisement