Link to home
Start Free TrialLog in
Avatar of a_anis3000
a_anis3000Flag for Egypt

asked on

Which audience Microsoft XNA is intended for?

I have been doing lot of Google searches for information about Microsoft XNA, and found lot of interesting facts about it, however none of them really says anything about the audience for which XNA is intended.

The closest answer I was able to find is that XNA facilitates game development for both hobbyists and professionals. Nothing is said about the level of programming required though
 
I find the "programming background is useful but not essential" claim for XNA to be too good to be true. Hence I am assuming that the XNA like any programming tool is meant for developers.

My exact question is what level of programming is needed to get into XNA? like any type of game programming do you have to be an experienced programmer/developer to get into XNA ?

Ultimately I am trying to research and determine if XNA is meant for me given my current level of programming.

Here are some background information about my programming skills. I have been learning C# for about a year or so. I am good with the basics (variables, loops, methods...etc) and quite adept in object oriented programming (Classes, structures, enumeration, encapsulation , inheritance, polymorphism..etc)

 
Avatar of Gary Davis
Gary Davis
Flag of United States of America image

Yes, XNA is a development platform. For example, the Windows Phone 7 can be programmed using Visual Studio using XNA or Silverlight. XNA is used for 3D (and other) game programming and Silverlight for more traditional apps or 2D games. You can use your C# skills to program with XNA.

Gary Davis
ASKER CERTIFIED SOLUTION
Avatar of Russell_Venable
Russell_Venable
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of a_anis3000

ASKER

>>One of my friends kids is developing his own games with it<<

thats interesting, also from the book you mentioned says that the book is meant to be a solid introduction to game development for somedbody with basic knowledge of the .NET Frame work and C#..

That is indeed very interesting, as I never tried to approach game development given that as far as I knew that any kind of game development was a very advanced area of programming that only programmers with lot of experience could approach. I guess XNA changes that perhaps that means I can approach game development with my current level of progamming now rather than waiting till its perfect.

XNA claims that it facilitates game development for both professional and hobbiest. Pardon the ignorance of my question but does mean that the platform can be used to develope full fledged games like the commercial ones that are normally created using the direct X api along with C++?

And speaking of commercial ones so far I have seen two XNA based games. The first called Magicka an rpg game that looks quite fancy. And the second one called Capsized, a pretty nice indie 2D game

Yes, you sure can. There are a lot of game currently released from Microsoft that use XNA/DirectX/C++. The advanced graphical games will give you trouble if your not a calculus kind of guy. If that is he kind of games your thinking of developing. Does stop you from making a good attempt at it either. For RPG and FPS games mostly you will need to figure formulas for player positions, length, altitude, gravity, rotation, speed, etc. This all depends on how advanced you want the game to be and based off your current academic level. The more professional games are very advanced that is where you need to have a very good understanding about platforms, OS architecture, programming language used,  processor compatibilty(hardware). Starting out I would not bother learning this off the bat or you will be stressed in a heartbeat. Just start low and build yourself up as you go ad join a community where people are friendly and will work with you on your project. All should go well.

>>Just start low and build yourself up as you go<<

Thats is exactly what I am planning to do, starting small then build up as I go, having taken introductory courses to graphics, artificial intelligence and computer architecture I am well aware of the fact that creation of games as advanced as the commercial ones is a very complex process that not only requires lot of experience in programming but also deep understanding of math, graphics, artificial intelligence and physics. Learning all this out of the bat and in a short time can be overwhelming, it takes time and lot of practice for these skills to mature. In the mean time its good to know that there are engines like XNA that makes things easier for less experienced programmers like my self to get introduced into game development while waiting for my skills to develop. And once it does I suppose at this point I can take a look at more advanced game engines such the Unreal Engine if XNA is not enough