Microsoft XNA (XNA's Not Acronymed [1]) is a set of tools, complete with a managed runtime environment, provided by Microsoft which facilitates computer game design, development and management. XNA does this by freeing game designers from worrying about nuts and bolts boilerplate coding,[2] and brings all aspects of game production into a single system[3]. The XNA toolset was announced March 24 2004, at the Game Developers Conference in San Jose, California; and a first Community Technology Preview of XNA Build was released March 14 2006.
XNA Logo. | |
Developer(s) | Microsoft |
---|---|
Stable release | |
Operating system | Microsoft Windows |
Type | Application framework |
License | EULA |
Website | XNA Homepage |
Overview
XNA Framework
The XNA Framework is based on the .NET Framework 2.0. It has been designed with an extensive set of class libraries, specific to game development exercises, to promote maximal code reuse across target platforms. It will also include a version of the Common Language Runtime, which is optimized for gaming requirements, to provide a managed execution environment to the XNA games. The runtime will be available for both Windows XP, Windows Vista and the Xbox 360. Since XNA games will be written for the runtime, XNA games will run on any platform supporting the XNA framework, with minimal or no modification. Games targeting the XNA framework can be written using the C# language.
The XNA Framework thus encapsulates low-level technological details involved in coding a game, making sure that the framework itself takes care of the difference between platforms when games are ported from one compatible platform to another, and thereby allowing game developers to focus more on the content and gaming experience. The XNA framework will integrate with a number of tools, such as XACT [1] etc., to aid in content creation, as well. These tools can help author the visuals or sounds in the game, and model characters with life-like dynamism.
Currently games on the XNA framework can only be written using Microsoft's own C# programming language. XNA FAQ
XNA Build
XNA Build, is a set of Game Asset Pipeline management tools, which help by defining, maintaining, debugging, and optimizing the Game Asset Pipeline of individual game development efforts. A Game Asset Pipeline describes the process by which game content, such as textures, 3D models etc, are modified to a form suitable for efficient execution by the gaming engine. XNA Build helps identify the pipeline dependencies, and also provides API access to enable further processing of the dependency data. The dependency data can be analyzed to find out which of the content is actually being used by the game. By marking out unused content, XNA Build helps reduce the size of games by as much as 40%.[4]
XNA Studio
XNA Studio is an integrated development environment(IDE) for development of games. Based on Visual Studio 2005 Team System, XNA Studio provides a structure for collaboration between content creators, programmers, management and testers. Project management tasks such as asset management, defect tracking, project automation and work item lists, are somewhat automated by XNA Studio.
XNA Game Studio Express
XNA Game Studio Express is the IDE for homebrew developers that will be available free of charge during the 2006 Christmas period[5]. Programmers can create games for free using the XNA framework, but to get their games to run on the Xbox 360 they will have to pay an annual fee of $99 for admission to the creators club. XNA Game Studio Express will also provide basic 'starter kits' which will give beginners to Game development example code showing proper usage of the Framework. In the initial release there will be no way of shipping precompiled binaries to other Xbox 360 players. Instead, others wishing to run the game must have access to the source code and their own membership in the "creators club" program. Distribution of binaries for Windows will be supported.
A beta version was released on August 30th 2006. The aimed release date of the final version is this Christmas season.