Becoming a games programmer

The place to hang out and talk about totally anything general.
cuber3
level1
level1
Posts: 11
Joined: Sun Sep 17, 2006 1:53 pm
Location: Belgium
Contact:

Becoming a games programmer

Postby cuber3 » Fri Apr 06, 2007 2:24 am

Hey all!
I don't know whether or not the Introversion team actually replies to posts like these, but I'd like to ask them how they started out programming games.
Don't get me wrong, I do realise it'll take a LOT of time and effort, but I'd really like to learn C++ and one day develop indie games myself.
I've been making Flash games for about 5 years now, along with a few friends, and I'd like to move on to C++ now.
I read a book covering the basics of the language, but I'd like to advance to simple 2D game programming now.
And perhaps, one day, when I'm experienced enough with 2D games, try to make the leap to 3D games.

If anyone from the Introversion team, or a forum member who has experience him/herself, could tell me how they started out, that'd be a major help.
Where did you start, what did you learn at first, where did you learn (studies, books, courses), etc ?
Perhaps someone could recommend a few books about 2D game programming in C++ ?

Any help is more than welcome!
User avatar
NeoThermic
Introversion Staff
Introversion Staff
Posts: 6256
Joined: Sat Mar 02, 2002 10:55 am
Location: ::1
Contact:

Postby NeoThermic » Fri Apr 06, 2007 2:33 am

Coming from a background in making games in flash might just help. See, when you have a concept for a game, you prototype it in a language you're not going to use for the final product (ergo so the prototype is a proof of concept).

C++ is your first port of call. Learn inheritance, polymorphism, the lot. Then learn OpenGL and SDL. Just those alone would allow you to program what you have in mind.

If this topic evolves right, I'll post things like the UML diagrams that I've drawn up from prototypes and you'll see how each item inherits and has polymorphism as required.

NeoThermic
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Fri Apr 06, 2007 10:55 am

Well rather than learning C++ I'd personally suggest C#, it's fairly similar and all that neo said still applies - however it has XNA capabilities for 3D games; which means that it can run on the Xbox, also not to mention that XNA is so easy to program with you could write a fully 3D Proof of concept quite quickly.
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
KingAl
level5
level5
Posts: 4138
Joined: Sun Sep 10, 2006 7:42 am

Postby KingAl » Fri Apr 06, 2007 10:58 am

A 3D proof of concept for a 2D game? Interesting...
Montyphy
level5
level5
Posts: 6747
Joined: Tue Apr 19, 2005 2:28 pm
Location: Bristol, England

Postby Montyphy » Fri Apr 06, 2007 11:47 am

cuber3, your first task is to ignore martin. :P
Uplink help: Check out the Guide or FAQ.
Latest Uplink patch is v1.55.
cuber3
level1
level1
Posts: 11
Joined: Sun Sep 17, 2006 1:53 pm
Location: Belgium
Contact:

Postby cuber3 » Fri Apr 06, 2007 12:40 pm

Thanks guys :)
I'll be grabbing another C++ book, so I have a more thorough knowledge of the language.
After that I'll get started with OpenGL, so I can get started with simple 2D games.
Can anyone recommend any books/sites on how to learn OpenGL ?
So far, all I've seen were either books that teach the absolute basics, or advanced books more aimed at software developers.
Thanks again for the replies, I really appreciate it :D
User avatar
NeoThermic
Introversion Staff
Introversion Staff
Posts: 6256
Joined: Sat Mar 02, 2002 10:55 am
Location: ::1
Contact:

Postby NeoThermic » Fri Apr 06, 2007 2:01 pm

martin wrote:Well rather than learning C++ I'd personally suggest C#, it's fairly similar and all that neo said still applies - however it has XNA capabilities for 3D games; which means that it can run on the Xbox, also not to mention that XNA is so easy to program with you could write a fully 3D Proof of concept quite quickly.


XNA is amazing, but I must point out that you should never do a proof of concept in the target language. The temptation to just build upon the proof of concept code generally overpowers most developers, and then you get a game that doesn't perform well.

As for OpenGL, the NeHe tutorials are one of the best places to start:
http://nehe.gamedev.net/

You can also find a slightly older version of the redbook online. It's the god of reference books on OpenGL, but it is somewhat outdated. Don't forget that goolging "{function name} site:opengl.org" will also give you the OpenGL man page for that function with details on how to use it and notes on the quirks and errors.

NeoThermic
User avatar
Cooper42
level4
level4
Posts: 810
Joined: Tue Mar 13, 2007 3:04 pm

Postby Cooper42 » Fri Apr 06, 2007 2:26 pm

Before you go the whole hog and learn programming, try modding a few of your favourite games. If you can deal with sandbox editors and produce something you are proud of and others enjoy, then start with the programming.

I know a number of people who have gone ahead and learnt programming of some description, only to find they don't have the talent to do anything with it, and so do not get to make the games they want to make (or just dump it as a career entirely).
Whoever you vote for, the government wins.
cuber3
level1
level1
Posts: 11
Joined: Sun Sep 17, 2006 1:53 pm
Location: Belgium
Contact:

Postby cuber3 » Fri Apr 06, 2007 3:22 pm

Cooper42 wrote:Before you go the whole hog and learn programming, try modding a few of your favourite games. If you can deal with sandbox editors and produce something you are proud of and others enjoy, then start with the programming.

I know a number of people who have gone ahead and learnt programming of some description, only to find they don't have the talent to do anything with it, and so do not get to make the games they want to make (or just dump it as a career entirely).


Well, as I said before, I've worked with Flash for over 5 years, which was hard for me at first (because ActionScript was my first ever scripting language), but after learning for about 2 years I was able to make some games I was really quite proud of (one of them had more than 1.250.000 views on newgrounds.com and scored frontpage), so I know I must have at least some talent (although I always work together with other artists because my drawing skills are not that great).
The point is, I'm pretty persistant, so I know I won't give up halfway through.
I don't have any false hopes of making a high-end 3D game rivalling today's commercial games, I'd just like to learn C++ and make some simple but original 2D games, more as a hobby, really.
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Fri Apr 06, 2007 4:55 pm

NeoThermic wrote:
martin wrote:Well rather than learning C++ I'd personally suggest C#, it's fairly similar and all that neo said still applies - however it has XNA capabilities for 3D games; which means that it can run on the Xbox, also not to mention that XNA is so easy to program with you could write a fully 3D Proof of concept quite quickly.


XNA is amazing, but I must point out that you should never do a proof of concept in the target language. The temptation to just build upon the proof of concept code generally overpowers most developers, and then you get a game that doesn't perform well.


Yeah, just be less tempted - if you;re using XNA you must use C# so...

KingAl wrote:A 3D proof of concept for a 2D game? Interesting...


I meant when he moves on to 3D
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
Darksun
level5
level5
Posts: 6461
Joined: Sat Dec 07, 2002 7:08 pm
Location: 127.0.0.1

Postby Darksun » Sat Apr 07, 2007 3:35 pm

There's no reason you couldn't make a 2D game using XNA
Stewsburntmonkey
level5
level5
Posts: 11553
Joined: Wed Jul 10, 2002 7:44 pm
Location: Nashville, TN
Contact:

Postby Stewsburntmonkey » Sat Apr 07, 2007 6:22 pm

Darksun wrote:There's no reason you couldn't make a 2D game using XNA


A lot of the major graphics libraries are moving to a completely 3D system anyway. 2D is more of a certain projection of a 3D model now than a system unto itself.
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Sat Apr 07, 2007 9:09 pm

Darksun wrote:There's no reason you couldn't make a 2D game using XNA


I know that, but as the person above said lots of 2D games are really 3D
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
xander
level5
level5
Posts: 16869
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Tue Apr 10, 2007 4:10 pm

Hey, SBM, you are now "the person above!" You should feel honored!

xander
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm

Postby martin » Tue Apr 10, 2007 7:38 pm

martin wrote:
Darksun wrote:There's no reason you couldn't make a 2D game using XNA


I know that, but as the Stewsburntmonkey above said lots of 2D games are really 3D
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.

Return to “Introversion Lounge”

Who is online

Users browsing this forum: No registered users and 14 guests