Creating a game for XBOX 360

Never dreamt about writing your own game and play it directly on your TV?
Nowadays, this is getting possible, and even easy if you know how to start.

First things first. If you plan to create something on XBox 360, you’ll need to play with XNA. And you’ll need a developper environment. Luckily, every tools are given for free, so you won’t need to spend a dime to see your latest creation running.

What do I need to get started?

First of all, you’ll need visual studio. It’ll allow you to edit your source, compile it, but also to compile the resources you want to include in your game. (I’ll talk about it later)

You can download Visual C# Express Edition here.
You’ll also need the service pack 1, available on the same page.

The XNA thing

XNA is a C# based framework. It’s completely oriented for video games, and it’ll greatly decrease the time you’ll spend writing base classes for your game. C# is a language very similar to Java. If you’re already familiar with Java, you won’t have any problem to get yourself into C# (from my point of view).

Basically, this framework provides method to handle 3D & 2D graphics, sounds, inputs, music and everything you may need in a game.

No need to fight with a complex 3D studio loader, or to implement JPEG. Most of the basic things are built in. The whole thing is a kind of extension on the top of DirectX.

Download XNA here

I installed Visual C# and XNA. What’s next?

Well then, you’re ready to start. My advice is to load and compile a project using the spacewars template. Just create a new project from this type, compile and run it. You’ll see what you can do with XNA.

If you want to go further, I suggest you to check the following websites:

XNA Creators club: A set of samples, tutorials, and useful resources.
Riemers: Many greats tutorials.

Differences between an XNA based game and a standard C++ game

First, you won’t have to write your own basic framework (nor use an existing one). This is particularly useful for loaders. (It’s always a pain to chose a 3D format for a game and to write a loader).

You’ll be able to pick up useful classes like matrix, vectors, quaternions, and you won’t need to handle directly the direct3D initialization.

What is also really different is the way you’ll handle resources.
Unlike “normal” app, most of the resources will be compiled along your application. For instance, if you made a nice aircraft with 3D studio Max, all you’ll need to do is to export it as .FBX and add it to your project. Then you’ll refer to the object by the alias name given to it.

It may sounds weird at first, but It happens to be very convenient. And don’t worry for additional art: even you can compile along with the main app, you can also tell your graphists to install XNA, and to compile themselves their creations. Then you’ll be able to add the generated files in your game folder and load them dynamically.

Conclusion

Writing a game requires time and motivation. XNA will allow you to start directly with the game code, and not to spend hours with “helper” classes like xml loader or game engine.

Feel free to contact me or to comment this article for further informations.

[Edit: June 2008]
I’m almost done with a 360 arkanoid-like project. There is the main game, of course, but also a simple level editor.
The latter one is obviously related to the main engine, however it’s open enough to be used by other projects. The levels are saved as xml files, and are quite easy to understand.

If you are working on an arkanoid-like game, whatever the platform, and looking for a level generator, or if you want to give me a hand for graphics or sounds, feel free to contact me.
The homepage of this project is:
www.gruaz.net/arkx

3 thoughts to “Creating a game for XBOX 360”

Leave a Reply

Your email address will not be published. Required fields are marked *