views:

191

answers:

6

I am starting to get into programming as a hobby, I had several classes in JAVA/C# at school and would like to get into game programming. Honestly, this is just for myself. I am not looking to fast track the next A+ game, just something I can work on during my downtime at work. I have already decided on C# using SharpDevelop at work and Visual Studio at home. My real question is should I start with basic console games in order to work on my basic skills first, or should I jump straight into the latest and greatest XNA/WPF technolgies. Thanks in advance.

Update - When I say console I mean text-based applications, not gaming cosnole games.

+2  A: 

I found XNA really easy to get started with for projects like that, so I recommend you try that. I don't know if it will work with SharpDevelop, but you can use it with Visual Studio Express which is free.

This question has more info and useful links for XNA: http://stackoverflow.com/questions/2377886/getting-started-at-game-development/2377908#2377908

Brian Rasmussen
The only reason I have to use SharpDevelop at work is that they have auditing software installed that scans any installed software for compliance. The only way to get around it is to run portable software off of my flash drive. Visual Studio can't be made portable.
Luminose
A: 

I would suggest reading about some general game programming techniques. Physics of objects, movement, collision detection etc. Much more worth in the long run than knowledge of a particular technology.

Developer Art
A: 

I would turn your question around a little bit and suggest you use XNA/WPF (probably XNA) to create some basic console games. If you ever decide to become a professional game developer on AAA type titles, you will probably do your programming in C++, although that is starting to change.

Jake Pearson
When I say console I mean text-based applications, not gaming cosnole games.
Luminose
Got it. In that case, I would just go for the XNA unless you heart is still warmed by Zork.
Jake Pearson
A: 

Personally I see nothing wrong with making text-based games and would dare say it's probably the easiest route for a hobbyist beginner. It's where I first ventured into game making way back in QBasic. At the very least it will get you thinking about what components a game needs, how you might go about structuring your game to track characters, game state, stats, etc.

XNA would also get you thinking along those lines, but you'd also have to think about graphics and efficiency (if you're anything like me and want to fill the screen with sprites the first chance you get), etc. It's a bit thornier in that respect, unless you keep your game really simple.

XNA, though, would give you an understanding of the all important game loop. The concepts of updating, drawing, frames, etc., that you might not get in a text-based game.

I'm rambling. My answer in a nut-shell: text-based games are your easiest entry point, XNA is a bit trickier but will teach you more, and you should make a text based game at work and do XNA at home

Bob
A: 

I'm learning game programming at the moment, not to program games inherently but in order that I can use things like AI, pathfinding, collision detection etc. in other programming I am doing. Point being that the exact type of programming is less the point to begin with but more to learn transferrable skills.

You should choose the one which will allow you to work on the tranferrables like physics etc. Those can then be applied to any context which I dont think is so much the case if you do it the other way and worry about the platform first.

Smalltown2000
A: 

Definitely start with basic C#. It's more or less required for XNA anyway, and with Console Applications, you can begin making text-based adventures, while learning about switches, methods, and loops, then begin using XNA when you feel you've learned enough.

Dustin Bennett