XNA Frequently Asked Questions
Untitled PageXNA Framework and XNA Game Studio
Q: What is XNA Game Studio?
A: XNA Game Studio is a new game development solution targeted primarily at students, hobbyists, and independent game developers. XNA Game Studio works with all versions of Visual Studio 2005 or Visual C# 2005 Express and lets developers create games for both Windows and Xbox 360. XNA Game Studio contains the following:
- The XNA Framework, a set of managed code development libraries that make it possible for game developers to be more productive when creating games for Windows and the Xbox 360.
- The XNA Framework Content Pipeline, a set of tools that allow developers to more easily incorporate 3D content into their games
- XNA Game Studio also contains a full set of documentation, how-tos, and starter kits that demonstrate how best to use the content pipeline and XNA Framework.
- XNA Game Studio runs side-by-side with other versions of Visual Studio without interference
- XNA Game Studio has now been released, and can be found here. It supports both Windows and Xbox 360 game development.
Q: What does XNA stand for?
A: XNA’s Not Acronymed
Q: How much does XNA Game Studio cost? Is there a difference between Windows and Xbox 360 development?
A: Visual C# 2005 Express, the XNA Game Studio tools and runtime environment for Windows are all FREE. To develop, debug and/or play games on the Xbox 360, however, you must have an XNA Creators Club subscription purchased directly from the Xbox Live Marketplace. Two subscription options are available: $99 per year or $49 per four months.
Q: Are there any prerequisites to run XNA Game Studio?
A: Yes. You must download and install Visual C# 2005 Express and the latest DirectX runtime updates (the full DirectX SDK is not required). Also, you need a Direct3D 9.0 video card capable of supporting at least Shader Model 1.1. Our recommendation is that your graphics card supports Shader Model 2.0 since many samples and starter kits require it. Check your graphics card manufacturer’s website for more information about your specific graphics card.
Q: Do I need a hard drive to run XNA-based games on my Xbox 360 console?
A: Yes. The XNA Framework runtime environment for Xbox 360 requires that a physical hard drive be present on your Xbox 360 retail console.
Q: What versions of Windows does XNA Game Studio support? I'm running Windows Vista, can I run XNA Game Studio ?
A: XNA Game Studio supports Windows XP SP2 and Windows Vista.
Q: How can I share my Xbox 360 game built with XNA Game Studio with other Xbox 360 users?
A: Right now, to share your Xbox 360 game with friends, four requirements must be met:
- The individual you are planning to share the game with must be logged in to Xbox Live and have an active subscription to the XNA Creators Club
- The receiving user must have downloaded the XNA Framework runtime environment for the Xbox 360
- The receiving user must have XNA Game Studio installed on their own development PC
- The game project, distributed as a .ccgame file or in source form to the receiving user, is deployed to their Xbox 360.
In the holiday season of 2008, we will make game distribution on the Xbox 360 much easier with the Xbox LIVE Community Games feature. Visit http://creators.xna.com to stay abreast of more details.
Q: Can I store my XNA Game Studio game on my memory card or CD/DVD and share it with a friend's Xbox 360?
A: No. Games developed using XNA Game Studio cannot be shared through a memory card or CD/DVD at this time.
Q: How do I tell the XNA product team about a bug I found or a new feature I want?
A: You can submit bugs and feature requests through the Microsoft Connect site. Sign in using your Windows Live ID, click on "Available Connections" and select "XNA" from the list. Once you complete the survey, you will be able to submit a bug or feedback request. If you are already in the XNA Connection, use the "Report an Issue" wizard to submit your new bug or feedback.
Q: How can I learn more about the XNA Game Studio?
A: We will continue to provide updates to the game development community via future events and our XNA Developer Center. You can also participate in community discussions. In addition, you can email xna@microsoft.com if you have any questions, but we cannot guarantee a response to every email we receive.
Q: Will I be able to develop a game and run it on both Xbox 360 and Windows?
A: You will have to compile the game once for each platform. In this release simply create a separate project for each platform and then compile them both. Our goal is to allow as much code as possible to be shared between those two projects, allowing you to use the same source files in both projects, but platform-specific code will need to be conditionally-compiled.
Q: Can I use the XNA Game Studio or XNA Framework to build a commercial Xbox 360 game?
A: XNA Game Studio lets you create Windows and now Xbox 360 console games much more easily. These games are limited to non-commercial scenarios for 360 titles created with XNA Game Studio . However, XNA Game Studio may be used to create commercial games which target Windows. The new Xbox LIVE Community Game feature will allow developers to find new channels to get their games seen by consumers. If you stil wish to pursue an opportunity to distribute your game through Xbox LIVE Arcade, please read this link for more details on how to do that.
Q: How can you debug XNA-based games running on the Xbox 360?
A: Debugging on the console is supported through a remote debugging connection from a Windows desktop running XNA Game Studio.
Q: Does the XNA Framework include the ability to use Xbox LIVE?
A: Certain features of Xbox LIVE will be made available through the ew Xbox LIVE Community Game feature. The details will be finalized prior to the release during the holiday 2008 season.
Q: How does the XNA Framework support audio?
A: The XNA Framework provides support for audio playback through managed XACT.
Q: Does the XNA Framework support XINPUT or DirectInput?
A: The XNA Framework provides support for input devices in games through managed XINPUT.
Q: What is the support policy for XNA Game Studio?
A: XNA Game Studio customers can seek support in our XNA Framework and XNA Game Studio forums accessible through the XNA Creators Club Online Forums.
Q: Do I need the DirectX SDK to use the XACT audio tool?
A: No, XACT is now included in the download of XNA Game Studio. However, if you want to use other tools, like PIX, you will need to download the latest DirectX SDK.
Q: What is the difference between XNA Game Studio and the XNA Framework
A: XNA Game Studio is a set of tools that extend Visual Studio 2005 products or Visual C# 2005Express. The XNA Framework is included with XNA Game Studio and it is the set of managed (.NET) libraries based on the .NET Framework 2.0 that developers use. You can also download the XNA Framework runtime components separately, should you want to share an XNA-based game with your friends on Windows.
Q: Is the XNA Framework running in emulation mode on the Xbox 360?
A: The XNA Framework makes use of a custom, native implementation of the .NET Compact Framework 2.0 CLR on the Xbox 360.
Q: Is the XNA Framework available on non-Microsoft platforms?
A: At this time, the XNA Framework is only available on the Windows and Xbox 360 platforms.
Q: Isn’t managed code in the XNA Framework interpreted and therefore slow?
A: No, it is not interpreted. The IL is just-in-time (JIT) compiled into native code when it is initially loaded by a process, prior to execution. This allows hardware-specific optimizations unique to the PC and Xbox 360 architectures.
Q: What exactly is the XNA Framework?
A: The XNA Framework allows game developers to create modern games using the C# programming language and a rich set of development libraries. The XNA Framework provides its own content pipeline to make it easy to get rich content (3D, 2D, sound, etc.) from content creation sources into a game. The XNA Framework also provides a very high level of API unification across the Windows and 360 implementations, thus virtually eliminating the cost and effort required to port games between these two platforms.
Q: How is this different than the .NET Framework?
A: The Framework is the leading development stack for building general purpose Windows-based applications. The XNA Framework was designed to leverage many familiar elements of the Framework, such as core class libraries and a Common Language Runtime, but is optimized for game development and execution. The XNA Framework includes a custom set of cross-platform libraries built from the ground up specifically for game development.
Q: Do we have network or Xbox Live access on the Xbox 360 via the XNA Framework?
A: On Windows you can use System.Net or any other network library. On Xbox 360 you will be able to access Xbox LIVE features, including multiplayer gaming, when the Xbox LIVE Community Game features go live.
Q: Can I create non-gaming applications (such as a Media Center/Player) with XNA Game Studio?
A: On Windows this is possible, but the initial release on Xbox 360 is tuned to writing games. This is an area we are actively looking to the community for feedback on the types of applications they want to write for their Xbox 360.
Q: Does the XNA Framework ship with the DirectX SDK?
A: Currently, the XNA Framework for Windows ships with XNA Game Studio and not the DirectX SDK. The XNA Framework for Xbox 360 is only available through Xbox Live Marketplace once a subscription to the XNA Creators Club has been purchased.
Q: Direct3D has feature X. Will feature X be available on the XNA Framework?
A: We have implemented or refactored a large number of features from Direct3D in the XNA Framework. We are actively investigating any additional functionality from Direct3D that may be required by game developers that may have been missed. We are taking feedback through the newsgroup forums as well as through xna@microsoft.com.
Q: Does the XNA Framework replace my version of the Framework on my Windows desktop?
A: No. The XNA Framework does not replace or interfere with your existing Framework installation. The XNA Framework on Windows is a set of class libraries built against the .NET Framework 2.0.
Q: Does the XNA Framework support Windows and Pocket PC devices?
A: While support for the Zune devices will be supported starting in the holiday 2008 season, the XNA Framework currently does not support Windows Mobile or Pocket PC devices. However, based on customer feedback this may be a direction we expand the XNA Framework in the future. We know that developing mobile games is a hot area of growth and one we would like to support in the future.
Q: Why doesn’t the XNA Framework Content Pipeline support my favorite content creation tool?
A: We feel we have chosen a robust set of file formats for the release of the content pipeline that allow you to work with a wide range of available content creation tools. More importers supporting more content creation tools will become available in the future.
Q: What is the C# language?
A: C# is a modern, object-oriented programming language designed with developer productivity in mind. C# is used by millions of software developers worldwide and provides full access to building applications based on the .NET Framework, the Compact Framework, and ultimately the XNA Framework as well.
Q: What are the benefits of managed code?
A: The managed execution environment provided by the common language runtime provides developers with a wealth of productivity benefits. Such managed code benefits include garbage collection, hardware abstraction, thread management, and a sandboxed security model. For more information about the Common Language Runtime and the Framework please visit the .NET Framework Developer Center.
Q: How widely used is C# in the gaming industry?
A: The vast majority of game studios recognize the productivity benefits of C# and are already using it for creating internal tools within their studios. There are even a few great games for Windows written using C#. But before the advent of the XNA Framework, doing true cross-platform development with C# targeting both the Windows desktop and the Xbox 360 was not a reality. That’s why we believe the XNA Framework represents an exciting opportunity for game studios.
Managed DirectX
Q: Is the XNA Framework different from Managed DirectX (MDX)?
A: Yes. The XNA Framework is a completely different set of technologies targeted at game developers. It does share similarities based on the fact that the underlying technologies are still based on DirectX. The XNA Framework also leverages other technologies such as XACT and XInput.
Q: Will there be any more improvements to Managed DirectX 2.0?
A: The Managed DirectX 2.0 beta libraries were declared deprecated in April 2006, and expired on October 5th, 2006. If you have an enterprise application that was materially impacted by this expiration, please send email to xna@microsoft.com .
Q: Does the XNA Framework replace Managed DirectX?
A: The XNA Framework has a managed API for working with hardware on the Xbox 360 and Windows. This API subsumes much of the functionality that previously existed in the MDX 2.0 beta, but it not a replacement for MDX.
Q: Does MDX 1.1 support development with the .NET Framework 2.0?
A: MDX1.1 is fully compatible with the .NET Framework 2.0.
Q: What does this all mean regarding Managed DirectX (MDX) 1.1?
A: MDX 1.1 is in sustained engineering mode, and will not have any new functionality added to it. If you have a gaming scenario that needs a specific feature found only in MDX 1.1, please let us know and we will consider it for the XNA Framework.
Q: Will my MDX 1.1 code run inside the XNA Framework?
A: Please refer to this migration guide that describes how to migrate MDX 1.1 code to the XNA Framework.
Q: I’m a game studio and I have made a significant tools investment on MDX 1.1, does this mean Microsoft will not support MDX 1.1 anymore?
A: Microsoft will continue to support MDX 1.1 as per our standard support policy. Once the XNA Framework ships we will provide guidance on how to move from MDX 1.1 to the XNA Framework