I'm going to start developing a game for the Xbox 360, its a small homebrew development and I don't have an Xbox 360 yet. Is it possible for me to develop the entire game targeting the XNA framework on Windows, and lastly "Create Copy of Project for Xbox 360" and have it work flawlessly?

What are the issues I would run into? Why do you recommend targeting and deploying to the Xbox 360 during development? and do I really need an Xbox 360 during development?

I'm also planning on using the superbly built Torque X game engine. Would this work well on my PC alone as well? And then transition over to the Xbox 360 without changing much code?

  • \$\begingroup\$ Is your underlying question "I'm interested in making an Xbox XNA game, do I need to buy an Xbox 360?" ? \$\endgroup\$ – Ricket Oct 29 '10 at 12:24
  • \$\begingroup\$ No, because I'm going to buy an Xbox 360, just that I may not have it during my initial weeks of development. \$\endgroup\$ – Robinicks Oct 29 '10 at 13:02

First of all - let me say - I have done exactly this (developing on PC and then porting to Xbox 360 late in development) and had only minimal trouble.

With XNA 4.0 and the introduction of the profiles (HiDef is what you want to target for the 360) it has become significantly easier to keep within the specifications of the Xbox.

You basically need to remember that the Xbox 360 has different performance characteristics to a PC. So while your game may port fine, you may have to spend some time doing performance tuning, especially if you are doing anything "fancy".

By far the biggest performance gotcha is the garbage collector on the Xbox 360. It is slow - certainly a lot slower than the one on the PC. So when you are developing on the PC you will want to use the Microsoft CLR Profiler to profile your memory: Once your game has loaded and is running you want to see close to zero allocations (XNA on Windows will still allocate a few things, usually to do with input, that are not a problem on the 360). Here is a blog post about avoiding garbage collector issues.

I recommend buying some Xbox 360 controllers early on, and using those during PC development.

The other thing to be aware of when developing for the 360 is the The Evil Checklist that your game is checked against during peer-review.

You will notice that there's a lot of stuff in there to do with profiles, the guide, the marketplace and particularly storage devices. These cause issues that just don't come up on PC. If your game stores data, does networking, needs to interact with profiles, etc, I would recommend getting an Xbox 360 early in your development cycle. Also - remember to build in support for a demo, as it is required for XBLIG.

I also can't speak much about Torque-X, but I assume that it's just a bunch of libraries that use XNA - so it should not cause any issues.


Yes you can build your entire game with XNA targeting Windows, and then with a few minor adjustements, you can also deploy the same code to Xbox360. I think there are a few places where you might have to add some #if #endif conditions, the code for controls and keyboard for instance. That code would be a little different.

All in all XNA is designed to be deployed on Windows and XBox, so it should not be a problem, I have done this before, and after 5 months of programming, our game was "ported" to Xbox too with just a little bit more work.

As for Torque X, I don't know about that, but if it is an engine for XNA, it shouldn't be a problem.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.