   Future Programming Career in Video Games (Specifically Xbox 360)
  I have done a bit of research into this and have found many different possibilities.1st. In the big professional Game studios like Activision- and specifically Infinity Ward or Treyarch- they look for people with C++ programming experience.Unfortunately, the XNA Game Studio packages that Microsoft has released, use C# for programming Xbox games. Plus these IDE's help with building the game and their structure. It also comes with the whole Xbox/Windows Live "Creators Club Online" feature where you can upload your games and if they get approved they go on the Marketplace.So, I know that I will need to jump in and start learning one of these first now and get a hold of it before I can do any actual game programming, but I want to know what I should do to start out with. The XNA Game Studio come with some good in depth tutorials for 2d AND 3d games...Any input would be nice. I am also very new to this site and hope that this site will help me a lot in the near future. One last thing, I would like to know if someone out there knows any professional programmers who work for any of the professional studios that I might be able to email with questions about careers.Thanks in advance.[Edited by - fashizzlepop on June 18, 2009 11:42:24 PM]
  As a beginning programmer it doesn't matter what the "professionals" use. What matters more is that you start learning to program. Eventually as a professional programmer you'll hopefully know multiple languages.C# is easier to program with and designed to allow you to be more productive faster. C# and Python are by far the most commonly recommended languages to start off with on these forums because they both share these common features. If you want to go with a language that it'll be slightly easier to transition over to C++ eventually, then go for C#.There are a number of professional programmers on this board, but I'm not one of them. I'm a designer who dabbles in programming.   ;  Ok... so do you think I should look into the XNA Game Studio? It uses C# and comes with some in depth game tutorials.The only other problem I have with this is that I have heard a lot about C# being really difficult as a starting language (not really my first language though) and that it's better to start in C++ before C#...?   ;  just a few notes.1) since you are just beginning, by the time you get to the point where you'd even consider workin as a professional game programmer, the 360 will be old news.2) The concepts are more important than the specifics, and what I mean is that although c++ is more commonly used in a professional setting, tools programmers use c# a lot of the time, and you will know multiple languages by then.3) I hate to be that guy, but you're getting way too ahead of yourself.  I'm sure that you have the passion and whatnot, but frankly most people do when it comes to game programming.  Most studios require a degree in Computer Science/Math/Engineering/something else technical, and as time goes by, the list of exceptions to this grows shorter.although I'm far from a pro, the reality is that it will be around 4 or 5 years before you are capable of doing the quality of work required to work in the industry, and even then, education is a big deal.  My suggestion, start with XNA, work hard, look into your education options, and see where it goes from there, because the road is long, with many a winding turn :)  but good luck   ;Quote:Original post by fashizzlepopOk... so do you think I should look into the XNA Game Studio? It uses C# and comes with some in depth game tutorials.The only other problem I have with this is that I have heard a lot about C# being really difficult as a starting language (not really my first language though) and that it's better to start in C++ before C#...?the exact opposite, C# is much easier.   ;  Thanks for your response. I know and have realized it will be far far off. I just figure I might as well start on the best fastest track because this industry IS moving so fast. I am planning on going to college and getting a BS in one of those areas. I know that Math is going to be a big point. Thanks for the advice, I will start looking into C# and XNA Game Studio. I would still like to maybe get an email address of someone that does work professionally at this. Anyone know of anybody? Or where I can find someone?   ;  I'm not (yet) a professional, I studied Gaming/Simulation last year (now working on some other projects + game developing for my own projects). I'm using C++ and I think, with a good book or tutorial, it won't be hard to learn. Plenty of documentation and tutorials available, the samples in the books I used for AI development were in C++ as well.If you are new to game development you could pick a rendering engine as well to quickly get started, I have used OGRE in the past and a bit of Irrlicht, that way you can start building the actual game straight away while at the same time, by using the API, you learn how to write your own game engine. For a simple 2D game, you could use an API like DirectX and OpenGL directly however, personally I found OpenGL a bit easier to get started with, but the problem is you have to write some helper functions yourself (or use a library of course). For 3D I'm using both in my game engine, depending on the build target it compiles the game either with DirectX or OpenGL (when compiling the game on Linux -multiplatform developing is actually pretty easy in my opinion- it picks OpenGL of course, or none at all when server build target has been choicen).I personally wouldn't let the decision be based on what XBox uses, there is more in the world then that, much more actually, and by the time you learned enough to make a full game yourself, the next generation of consoles has arrived, and maybe Nintendo or Sony has made something so awesome by then everybody buys that and nobody uses the XBox anymore. So I think basic skills that you can apply to any language, any platform and any API are the most valuable things you can learn right now. Or just try it all, try both DirectX and OpenGL (to understand how different APIs are still the same in some way), try to get a game running on both Windows and Linux (to get an idea how to build games for different platforms). Or even just use a rendering engine, those also exist in professional industry, you might end up having to use one rather then make one yourself if you become a game developer.   ;  Thanks, I think I am going to go ahead with C# and the XNA Game Studio IDE. Once I get better at programming in general and want to look at different ways to apply what I've learned I will definitely go into C++ and do what you suggested, testing both DirectX and OpenGL and look into some good engines... I also really like the cross platform idea. I am very impressed by the responses I have gotten so far from this site. Are there and specific Math classes that I should be looking forward to? I am currently just past the Algebra 2 level and am supposed to head into Pre-Calc. At my school they offer Prob and Stats too. I am going to guess that Calculus would be better than Prob and Stats from a programming perspective. What are some highly recommended C# tutorials/websites that you guys know of? Using google, I tend to only find mediocre ones as opposed to those really good ones hiding out there.   ;  Heya,Linear algebra is used in games like crazy.Learn that and you have most of all the math you'll need unless you get hard core into physics programming which if so you'll want to take physics classes and related math classes.   ;  I'm a programmer for Digital Extremes, but to be honest, I'm not sure how much more information you could glean from me as opposed to searching this forum for similar posts on getting started (there's lots). There's lots of non-professionals who have given good advice on getting started. Besides, isn't it better to get a bunch of different view points and find the similarities, instead of relying on just one?The only industry-related advice I could give to you at this point is to be patient, and get as much experience under your belt as you can. Finish your projects, and work through your problems because on the job, you won't have the option of starting over, or giving up. You'll have to feel comfortable spending your day solving unfamiliar (and sometimes familiar) problems. This involves lots of learning. I'm continually learning new APIs, tools, and sometimes even the basics of languages in short periods of time -- often days, and even hours. You're expected to do whatever is required to get the job done so the company can deliver it's milestone, and everyone gets paid.Game studios look for developers who are productive, self-motivated, and have a demonstrated ability to make games (no surprises there, I hope). Don't try to fast-track it, since if you manage to get a job without being prepared, you'll hate it, and you won't last. Take it one step at a time, since it's about the journey more than the destination afterall.Ramble complete.   