Hello everyone,
I have to write a dossier for a french videogame monthly magazine, where I should present the "product" to the readers, most of whom are teen gamers. It's no tech article, but a "perspective" one, about what is and may become XNA. If it can spark something inside a few of our readers, and have them try game development, that will be nice.
Therefore, I'd like to have an idea about XNA reception on the users' side.
I have a serie of generic questions. I'd be really happy that some of you cared to answer.
Basic questions :
- Why choose XNA over DX C++ dev
- Why or how is XNA more suited to indie/homemade developements
- Is there a reason why one would choose not too dev
How would you describe XNA framework, refering to
- the dll provided
- the XNA structure of the project (pipeline, game loop, good sides, flaws -> generic idea, please)
- and about Microsoft assistance
About 360 developping
- Who would prefer something similar to a more standard "home 360 devkit", in the way Sony proposed the Yaroze years ago
For now, things being how they are
- what is the destination of XNA production. In substance : what are you using it for (small games utilities to get introduced to propre game development problematics )
and in the future
Is the perspective of selling your production via Xbox Live something important in your eyes
What do you expect from further XNA developpement
- for the near future, in term of tecnical, environmental point of view
- for a more distant future, in terms of "strategy", of direction Microsoft should give to XNA (more and more libs produce always higher level developpement layers GUI construction-kit-like layer allow people to break the structure when they need -short circuiting content pipeline, for ex- etc...)
Thank you in advance for your answers

I have to write an article about XNA Game Studio : user point of view needed
Billy Porter
Kanchan
I wish other could answer me : you don't have to answer to every point. And of course, you can just says "Yes, it's just like Peter D said, for me too" : it's the user point of view that I want, whatever it is, in order to define the basic ideas like :
"Who uses XNA what for Do they like it the way it is How would they like it to evolve "
So, among people here, how many already developed "homebrew" software before How many choosed XNA with the commercial objective of selling small games trough Live wheneve it will be possible How many just for fun or "to learn"
For people who are already professional game coders during the "opening hours", can you imagine working with XNA at your sofco on "heavy" commercial game project
Johan Nordberg
With a lot of these you realy need to contact the XNA Team... if you drop an email to xna@microsoft.com they will be able to put you in touch with the right people so that you get the correct answers. If you do not get an answer over the next few days drop me an email (Look in Profile, or through my site www.virtualrealm.com.au) and I will contact them and pass on the contact information.
sbrushey
I was considering to contact for example the author of Wildboarders, for a start. His experience in developing a small game with, in a short period of time for a big deadline, is interesting. I think I could tell me how XNA made things easier (or not). Plus he integrated an external physic engine : Microsoft in the conference I attended was extremely caring about "community" interaction, intergration of other people's code, libs, engines etc...
Do you have, Glenn, a similar experience to tell me Do you know someone else who could
progames25
- Why choose XNA over DX C++ dev
XNA actually sits on top of DX so it's not really a question of choosing something different. XNA effectively abstracts much of the process of setting up the graphics pipeline i.e setting up the card, pixel depths, back buffer formats etc. etc. It is an attempt to allow anyone with a little patience and willingness to learn, an opportunity to create their own games. XNA express also allows us professional programmers a chance to write our own games for a genuine 10 million + selling console.
- Why or how is XNA more suited to indie/homemade developements
XNA is more suited because it is simpler to use than something straight directx and does a lot of the hard work for the developer. Giving the developer a set of standard features and functionality and taking the guesswork of writing to various types of hardware.
XNA uses a component based architecture, which allows for anyone in the community to write and share components with one another. This leads to people who wouldn't ordinarily be able to write something like a .map importer, to concentrate on writing games and simply use a component for that part of their game, without having to worry. Apart from learning C#, there are no other requirements needed in order to make games with XNA.
One major feature of XNA is that the same code will run almost unchanged on both your 360 and any windows PC that meets the minimum XNA specification. This is great news for Indies as we don't have to try to figure out if the code we are writing will work on joe blogs machine. If his machine meets the XNA specs, then the code will work. The code will also work on absolutely any 360!
- Is there a reason why one would choose not to dev
Yes. Development of a game, while fun, takes time and patience. A lot of people simply don't have enough of these things. The teens of today have been taught to expect instant gratification and writing a game doesn't really give that. The fun is in writing the game and seeing your vision come to life. It just isn't an overnight process. A lot of people will be put off by that.
How would you describe XNA framework, refering to
- the dll provided
The DLL provided is simply an assembly that contains the classes and functions that you use within your programs. The XNA team are taking user feedback into account and correcting errors or updating code as they need to. As such the code within the assemblies is very stable and easy to use.
- the XNA structure of the project (pipelines, good sides, flaws -> generic idea, please)
The content pipeline is a good way to get content into a format that will work on both the 360 and a PC. The ability to write a custom importer also allows the pipeline to be expanded by the user and effectively future proofs it. Some of the flaws in the pipeline would include a lack of compression suppport and the need to pre-compile all of your content or end up writing dynamic content generation algorithms (not an easy thing to do).
The projects that are created center around the Game component, which controls the game loop. This is effectively the heart of any game just as the game timer is the pulse. Both of these things, which can be difficult to implement without experience, are provided out of the box by XNA.
- and about Microsoft assistance
As you can see, these forums are very busy and frequented by microsoft XNA staff. As such most questions are answered quickly and a good solid community is slowly forming around XNA. It is also good to know that microsoft take feedback from users seriously and try to have a quick turnaround time for any show stopper fixes.
About 360 developping
- Who would prefer something similar to a more standard 360 devkit
I don't know if you have seen a 360 dev kit but, it is designed to allow for all aspects of the machine to be controlled by the developer. Without a good knowledge of console development, a dev kit is pretty useless in the hands of a standard or intermediate user.
One thing that everyone using XNA is calling out for however, is a way to sell and distribute their 360 homebrew games to the 360 community at large (and not simply to other creators club members) and make some money if the games are good enough.
The problem is that it is not clear how this would work in practice and we all know that there is bound to be a lot of dross produced along with the great games that will inevitably come out of this. I would suggest a demo system much like shareware, so that if a user wishes to keep an xna developed game, they simply pay to do so otherwise the game is automatically deleted after a short time or set number of plays. This is something that Microsoft can control from within Live and purchases would be simple via microsoft points. Microsoft can then take a hosting fee from each purchase and auto-pay the developer the remainder at months end (the developer would simply have the money credited to their registered bank account or recieve nothing if their game didn't sell.
For now, things being how they are
- what is the destination of XNA production. In substance : what for are you using
XNA right now What can't it be used for
- and in the future
Right now I am using it to learn about console development i.e. what works on a tv screen. What makes a console game a keeper and how to program the various exposed aspects of a production 360. In the future I hope to be able to sell the cream of my endeavours on some kind of microsoft provided live service.
What do you expect from further XNA developpement
- for the near future, in term of tecnical, environmental point of view
- for a more distant future, in terms of "strategy", of direction Microsoft should give to XNA (more and more libs produce always higher level developpement layers GUI construction-kit-like layer allow people to break the structure when they need -short circuiting content pipeline, for ex- etc...)
The XNA system is component based so it is possible to write something like a gui layer etc. etc. The problem with providing a standard component for everything or abstracting out to too high a level is that all games produced with XNA will start to look the same. Just look at the majority of games from something like Torque. It's mainly FPS games because the engine provides everything you need to do that out of the box. Real development work is needed to create anything not FPS related with it. It would be hard to deny that you can pretty much tell a torque game at first glance now. I know I can. Providing helpers for the more difficult game tasks, while not molly coddling the XNA creators club developers, has fostered a healthy do it yourself attitude. Some people may not like this ( they expect XNA to pre-write their game for them for some strange reason) but, in the long run it will mean that a lot more original content is produced and cookie cutter clones are kept to a minimum.