Something hit me today. I've already left A level college and I have no idea what I want to do as a career. Before, I used to tell myself "Software Engineering", but I think I knew a long time ago that it's not something I really want to do.

Right now there a three fields in Computing that intrigue me very much (and have for some time). Games Development, OS Development and Hardware (mainly firmware and drivers, not actually designing and building them).

So I'm asking about what sort of skills I need, and things I should get aquainted with for each, but since this is the Games Development forums you may focus on Games Development if you'd like.

Thanks in advance.

3D math and physics, artificial intelligence ( as it relates to games ), 3D graphics [ stay on top of all of the updates ], general programming skills, data formats, optimizing, and more... of course, pick/change/add the parts that are relevant to what you're trying to do. A good way to learn alot is to try and make something ( a game ) that you don't know how to make. You'll be forced to find out and learn alot of things. There's no real substitute for that.. reading all the theory is mighty boring unless you have ( or can see ) a use for it.

commented: thanks this helps +1

Matt pretty much nailed it. I thought I knew math pretty well, until I started designing games (just a hobbyist). Checking forums that are more specialized in game development and see what solutions people offer to various situations. There are many shortcuts and hacks for creating interesting effects in games, mainly due to performance reasons, that might not be obvious at first. For instance, physics are often (until recently) faked because it's quicker to process than an actual, true physics equations.

You can start by modding games that you like. How? google. I haven't done any game dev but am definitely interested in it. A good friend of mine who now works in Rockstar always modded a game in his spare time. He recommended Jedi Knight as a good game to start modding. I suppose modding is better way to start as you are partially writing it rather than to make something from very scratch.

3D - (basics, rendering, lighting)
Physics - (basics, some API)
Shaders - (GLSL,HSL, CG)
Engines - (pick one or 2)
Networking - (some APIs)

Basically you should know a bit about everything.And concentrate on 2 or 3 areas.

Also try making a game yourself. That's the only way to say for sure if you can handle doing games. Do something simple.

Mod-ing ...not so good idea if you have no previous experiance with creating games. It would just frustrate you. Once you know something, modding is a good way to learn advanced stuff and get your head in the current world.

Introduction to Game Development

Based on the curriculum guidelines of the IGDA, Introduction to Game Development is the first book to survey all aspects of the theory and practice of game development, design, and production. The book, which might be used as a text for introductory courses or as a comprehensive reference for game developers and designers, is divided into seven independent parts: Critical Game Studies, Game Design, Game Programming (Languages and Architecture), Game Programming (Mathematics, Collision Detection, and Physics), Game Programming (Graphics, Animation, Artificial Intelligence, Audio, and Networking), Audio Visual Design and Production, and Game Production and the Business of Games. Twenty-seven of the leading game developers.....

Would make for an interesting read. :-P. Even though I've not read it, it seems to introduce all the things you will need to know if you are going to program games for a living.