Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Microsoft XNA
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Freeware set of tools by Microsoft}} {{Use mdy dates|date=February 2023}}{{infobox software platform | name = Microsoft XNA | icon = | image = Microsoft XNA logo.svg | caption = | target = [[Xbox 360]], [[Microsoft Windows|Windows]], [[Windows Phone]] | developer = [[Microsoft Gaming]] | editor = [[Microsoft XNA Game Studio|XNA Game Studio]] | runtime = XNA Runtime | format = XNB | language = [[C Sharp (programming language)|C#]] and [[Visual Basic .NET]]<ref>{{cite web | url=https://msdn.microsoft.com/en-us/library/hh477142.aspx | title=XNA Game Studio 4.0 Refresh | date=September 29, 2011 }}</ref> (officially) | application = [[Video games]], [[console games]], [[mobile games]] | status = Discontinued<ref name="dead1">{{cite web|url=http://www.gamasutra.com/view/news/185894/Its_official_XNA_is_dead.php|archive-url=https://web.archive.org/web/20130203060615/http://www.gamasutra.com/view/news/185894/Its_official_XNA_is_dead.php|url-status=dead|archive-date=February 3, 2013|title=It's official: XNA is dead|last=Rose|first=Mike|publisher=[[Gamasutra]]|date=February 1, 2013}}</ref><ref name="dead2">{{cite web|url=http://www.lifehacker.com.au/2013/02/xna-is-dead-3-alternatives-that-let-you-use-your-c-and-net-skills/|title=XNA Is Dead: 3 Alternatives That Let You Use Your C# Skills|publisher=[[Lifehacker]]|date=February 2, 2013}}</ref><ref name="dead3">{{cite web|url=http://www.codemag.com/article/1411081|title=XNA is Dead; Long Live the New XNA, MonoGame|last=Williams|first=Chris|publisher=Code Magazine|access-date=May 8, 2016}}</ref> | license = [[Freeware]] }} '''Microsoft XNA''' (a [[recursive acronym]] for '''XNA's not acronymed''')<ref>{{Cite web |date=2006-08-20 |title=DirectX Developer Center: XNA Frequently Asked Questions |url=http://msdn.microsoft.com/directx/xna/faq/ |archive-url=https://web.archive.org/web/20060820065239/http://msdn.microsoft.com/directx/xna/faq/ |archive-date=2006-08-20 |access-date=2021-05-17 |website=[[MSDN]] |publisher=[[Microsoft]]}}</ref> is a [[freeware]] set of tools with a [[Managed code|managed]] [[Runtime system|runtime environment]] that [[Microsoft Gaming]] developed to facilitate [[video game]] [[game development|development]]. XNA is based on [[.NET Framework]], with versions that run on [[Microsoft Windows|Windows]] and [[Xbox 360]]. [[Microsoft XNA Game Studio|XNA Game Studio]] can help develop XNA games. The XNA toolset was announced on March 24, 2004, at the [[Game Developers Conference]] in [[San Jose, California]]. A first [[Community Technology Preview]] of XNA Build was released on March 14, 2006. In many respects'', XNA'' can be thought of as a .NET analog to Microsoft's better known game development system, [[DirectX]], but it is aimed at developers primarily interested in writing lightweight games. XNA is the basic platform for [[Xbox Live Indie Games]]. As of January 2013, XNA is no longer being developed,<ref>{{cite web |last=Crossley |first=Rob |date=31 January 2013 |title=Microsoft email confirms plan to cease XNA support |url=http://www.computerandvideogames.com/389018/microsoft-email-confirms-plan-to-cease-xna-support/ |work=[[Computer and Video Games]] |publisher=[[Future Publishing]]}}</ref> and it is not compatible with [[Windows Runtime]] (the API for developing [[Metro-style apps]]), which was introduced with [[Windows 8]].<ref>{{cite web |last=Klepek |first=Patrick |date=16 September 2011 |title=The Future of XNA Game Studio and Windows 8 |url=http://www.giantbomb.com/news/the-future-of-xna-game-studio-and-windows-8/3667/ |work=[[Giant Bomb]]}}</ref> ==Overview== ===XNA Framework=== Microsoft XNA Framework is based on the native implementation of [[.NET Compact Framework]] 2.0 for Xbox 360 development and [[.NET Framework 2.0]] on Windows. It includes an extensive set of class libraries, specific to game development, to promote maximum [[code reuse]] across target platforms. The framework runs on a version of the [[Common Language Runtime]] that is optimized for gaming to provide a [[managed code|managed]] execution environment. The runtime is available for [[Windows XP]], [[Windows Vista]], [[Windows 7]], [[Windows Phone]] and [[Xbox 360]]. Since XNA games are written for the runtime, they can run on any platform that supports the XNA Framework with minimal or no modification. Games that run on the framework can technically be written in any .NET-compliant language, but only [[C Sharp (programming language)|C#]] in [[XNA Game Studio Express]] IDE and all versions of [[Microsoft Visual Studio|Visual Studio 2008]] and 2010 (as of XNA 4.0)<ref>{{cite web|url=http://create.msdn.com/en-us/resources/downloads |title=App Hub - downloads |url-status=dead |archive-url=https://web.archive.org/web/20150204004132/http://create.msdn.com/en-us/resources/downloads |archive-date=2015-02-04 }}</ref>{{Failed verification|reason=This link is dead now, but I traversed it as far back in the past in Web Archive as I could. But hardly any of what is written above was there.|date=February 2015}} are officially supported.<ref name="xnafaq">{{Cite web |date=2009-09-08 |title=XNA Frequently Asked Questions |url=http://msdn.microsoft.com/en-us/xna/aa937793.aspx |archive-url=https://web.archive.org/web/20090908145646/http://msdn.microsoft.com/en-us/xna/aa937793.aspx |archive-date=2009-09-08 |access-date=2023-02-21 |website=[[MSDN]]}}</ref> Support for [[Visual Basic .NET]] was added in 2011.<ref>{{cite web |date=24 May 2011 |title=Code Sample Details - Game State Management (Mango, C#/VB) |url=http://xbox.create.msdn.com/en-US/education/catalog/sample/game_state_management |url-status=dead |archive-url=https://web.archive.org/web/20130604054042/http://xbox.create.msdn.com/en-US/education/catalog/sample/game_state_management |archive-date=4 June 2013 |access-date=2013-06-15 |website=[[Xbox]] [[MSDN]] |publisher=[[Microsoft]]}}</ref> The XNA Framework 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 integrates with a number of tools, such as the [[Cross-platform Audio Creation Tool]] (XACT), to aid in content creation. The XNA Framework provides support for both 2D and 3D game creation and allows use of the Xbox 360 controllers and vibrations. XNA framework games that target the Xbox 360 platform could only be distributed by members of the Microsoft XNA Creator's Club/App Hub, which carried a $99/year subscription fee.<ref name="xnafaq" /> Desktop applications can be distributed free of charge under Microsoft's current licensing. ===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 and 3D models, are modified to a form suitable for use 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 help reduce the size of a game by finding content that is not actually used. For example, XNA Build analysis revealed that 40% of the textures that shipped with ''[[MechCommander 2]]'' were unused and could have been omitted.<ref name="teamblog">{{Cite web |date=2006-01-24 |title=Will XNA tools be able to help reduce game sizes? |url=http://blogs.msdn.com/briankel/archive/2006/01/24/517071.aspx |archive-url=https://web.archive.org/web/20060206160118/http://blogs.msdn.com/briankel/archive/2006/01/24/517071.aspx |archive-date=2006-02-06 |website=[[MSDN]]}}</ref> ===XNA Game Studio=== {{main|Microsoft XNA Game Studio}} XNA Game Studio is a [[programming environment]] for development of games.<ref name="XGS">{{cite web |date=2012-07-31 |title=Developing games |url=https://msdn.microsoft.com/library/windows/apps/hh452744 |archive-url=https://web.archive.org/web/20120830190204/https://msdn.microsoft.com/library/windows/apps/hh452744 |archive-date=2012-08-30 |access-date=2007-03-20 |website=[[MSDN]]}}</ref> Five revisions have been released so far, but as of 2015, no new versions will be developed.<ref>{{cite web |last=Hruska |first=Joel |date=February 1, 2013 |title=Microsoft kills XNA |url=http://www.extremetech.com/gaming/147289-microsoft-kills-xbox-360pc-cross-platform-development-declares-directx-no-longer-evolving |website=[[ExtremeTech]]}}</ref> XNA Game Studio Express was the first version released on August 30, 2006, and was intended for students, hobbyists, and independent game developers.<ref name="gamefeststudioexpress">{{Cite web |date=2006-08-13 |title=Microsoft Invites the World to Create Its Own Xbox 360 Console Games for the First Time |url=http://www.microsoft.com/presspass/press/2006/aug06/08-13XNAGameStudioPR.mspx |archive-url=https://web.archive.org/web/20060820071806/http://www.microsoft.com/presspass/press/2006/aug06/08-13XNAGameStudioPR.mspx |archive-date=2006-08-20 |website=[[Microsoft]]}}</ref><ref>{{Cite web |last= |title=XNA Game Studio Express |url=http://msdn.microsoft.com/en-us/xna/aa937795.aspx |archive-url=https://web.archive.org/web/20080907054026/http://msdn.microsoft.com/en-us/xna/aa937795.aspx |archive-date=2008-09-07 |access-date=2023-02-21 |website=[[MSDN]] |language=en-us}}</ref> It was available as a free download. Express provides basic "starter kits" for rapid development of specific genres of games, such as [[platform game]]s, [[real-time strategy]], and [[first-person shooter]]s. Developers could create [[Microsoft Windows|Windows]] games for free with the XNA Framework, but to run their games on the Xbox 360 they will have to pay an annual fee of US$99 (or a four-month fee of US$49) for admission to the Microsoft XNA Creator's Club. With an update, XNA developers could compile Xbox 360 binaries and share them with other Microsoft XNA Creator's Club members. XNA Game Studio 2.0 was released on December 13, 2007.<ref>{{Cite web |title=XNA Creators Club Online - Quick Start Guide |url=http://creators.xna.com/Education/GettingStarted.aspx |archive-url=https://web.archive.org/web/20080907054026/http://msdn.microsoft.com/en-us/xna/aa937795.aspx |archive-date=2008-09-07 |website=[[MSDN]]}}</ref> XNA Game Studio 2.0 features the ability to be used with all versions of [[Visual Studio 2005]] (including the free [[Microsoft Visual C Sharp|Visual C# 2005 Express Edition]]),<ref>{{Cite web |title=XNAtutorial.com |url=http://www.xnatutorial.com/ |archive-url=https://web.archive.org/web/20061023143721/http://www.xnatutorial.com/ |archive-date=2006-10-23 |website=XNA Tutorial}}</ref> a networking API using [[Xbox Live]] on both Windows and Xbox 360 and better device handling.<ref>{{Cite web |title=XNA Team Blog : XNA Game Studio 2.0 Released<!-- Bot generated title --> |url=http://blogs.msdn.com/xna/archive/2007/12/13/xna-game-studio-2-0-released.aspx |url-status=dead |archive-url=https://web.archive.org/web/20090826074513/http://blogs.msdn.com/xna/archive/2007/12/13/xna-game-studio-2-0-released.aspx |archive-date=2009-08-26 |access-date=2007-12-13 |website=[[MSDN]]}}</ref> XNA Game Studio 3.0 (for Visual Studio 2008 or the free Visual C# 2008 Express Edition) allows production of games targeting the [[Zune]] platform and adds [[Xbox Live]] community support. It was released on October 30, 2008, and supported C# 3.0, LINQ and most versions of Visual Studio 2008. XNA Game Studio 4.0 was released on September 16, 2010.<ref>{{cite web |date=September 16, 2010 |title=XNA Game Studio 4.0 Available for Download |url=http://blogs.msdn.com/b/xna/archive/2010/09/16/xna-game-studio-4-0-available-for-download.aspx |url-status=dead |archive-url=https://web.archive.org/web/20110807063152/http://blogs.msdn.com/b/xna/archive/2010/09/16/xna-game-studio-4-0-available-for-download.aspx |archive-date=2011-08-07 |access-date=September 16, 2010 |work=XNA Game Studio Team Blog |publisher=Microsoft}}</ref> It added support for the [[Windows Phone]] platform (including 3D hardware acceleration), framework hardware profiles, configurable effects, built-in state objects, graphics device scalars and orientation, cross-platform and [[multi-touch]] input, microphone input and buffered audio playback, and [[Visual Studio 2010]] integration.<ref name="XNA 4 new">{{cite web |title=What's New in XNA Game Studio 4.0 |url=http://msdn.microsoft.com/en-us/library/bb417503.aspx |archive-url=https://web.archive.org/web/20080919084549/http://msdn.microsoft.com/en-us/library/bb417503.aspx |archive-date=2008-09-19 |access-date=September 16, 2010 |work=MSDN |publisher=Microsoft}}</ref> XNA "Game Studio 4.0 Refresh" was released on 6 October 2011, and added support for Windows Phone 7.5 (Mango), and [[Visual Basic]].<ref name="xna game studio 4.0 refresh">{{cite web | url=http://www.microsoft.com/en-us/download/details.aspx?id=27599 | title=XNA Game Studio 4.0 Refresh | publisher=Microsoft | work=Downloads | date=October 6, 2011}}</ref> ===XNA Framework Content Pipeline=== The XNA Framework Content Pipeline is a set of tools that allows Visual Studio and XNA Studio to act "as the key design point around organizing and consuming 3D content".<ref name="XGS"/> ===XDK Extensions=== Formerly known as XNA Game Studio Professional, XDK Extensions is an add-on to XNA Game Studio and requires the Microsoft Xbox 360 Development Kit.<ref>{{cite web |url=http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=ced54340-d2ad-44bd-8a77-22339ed86e08 |title=Download GDC 2009: XNA Game Studio Program Overview from Official Microsoft Download Center |publisher=Microsoft.com |access-date=2013-06-15 |archive-url=https://web.archive.org/web/20100724061754/http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=ced54340-d2ad-44bd-8a77-22339ed86e08 |archive-date=2010-07-24 |url-status=dead }}</ref> Both are only available for licensed Xbox developers. The extensions include additional managed APIs for achievements, leaderboards, and other features reserved for licensed game titles. Titles developed using XDK Extensions include winners of Microsoft's [[Dream.Build.Play]] competition among others. The most heavily publicized of these was ''[[The Dishwasher: Dead Samurai]]''. ==License agreement== The Microsoft XNA Framework 2.0 [[EULA]] specifically prohibits the distribution of commercial [[networked games]] that connect to Xbox Live and/or Games for Windows Live in the absence of a specific agreement signed by both the developer and Microsoft.<ref>[http://creators.xna.com/gamestudio2/xnags_setup.EULA.rtf XNA Game Studio 2.0 Software License Terms]{{Dead link|date=October 2011}}</ref> This means that XNA Game Studio can still be used to develop commercial games and other programs for the Windows platform, although Microsoft's networking support code for Xbox/Windows Live cannot be used. Self-developed network code can still be used inside the developer's XNA project.{{Citation needed|date = January 2015}} Games created using XNA Game Studio may be distributed via the [[Windows Phone]] marketplace, and formerly via [[Xbox Live Indie Games]].<ref name="31Homebrews">{{cite web |url=http://www.1up.com/features/31-homebrew-games-worth-playing |archive-url=https://web.archive.org/web/20110503220427/http://www.1up.com/features/31-homebrew-games-worth-playing |url-status=dead |archive-date=May 3, 2011 |title=31 Homebrew Games Worth Playing |first=Ryan |last=Winterhalter |work=[[1UP.com]] |date=April 29, 2011 |access-date=May 1, 2011 }}</ref> The software may also be used to create commercial games which target Windows.{{Citation needed|date = January 2015}} ==Dream Build Play== {{Main|Dream Build Play}} [[Dream Build Play]] was an annual and global $75,000 Microsoft contest promoting Microsoft XNA and eventually [[Xbox Live Indie Games]], although it predated it. The contest was first announced in 2006 and first opened in January 2007.<ref>[http://blogs.msdn.com/b/alfredth/archive/2006/12/15/dream-build-play.aspx Dream Build Play, Alfred Thompson]</ref> Many winners are notable developers in the [[Indie game]] community. ==Xbox Live Indie Games== {{Main|Xbox Live Indie Games}} Xbox 360 games written in XNA Game Studio could be submitted to the App Hub,<ref>{{Cite web |title=App Hub |url=http://create.msdn.com/ |archive-url=https://web.archive.org/web/20101012210250/http://create.msdn.com/en-US/ |archive-date=2010-10-12 |website=Create MSDN}}</ref> for which premium membership was required (about US$99/year). All games submitted to the App Hub were subjected to peer review by other creators. If the game passed review then it would be listed on [[Xbox Live Marketplace]]. Creators could set a price of 80, 240 or 400 [[Microsoft Points|points]] for their game. The creator is paid 70% of the total revenue from their game sales as a baseline. Microsoft originally planned to take an additional percentage of revenue if they provided additional marketing for a game, but this policy was rescinded in March 2009, leaving the flat rate intact regardless of promotion.<ref>{{cite web|url=http://creators.xna.com/en-US/news/downloadhistorynews |title=Download History News |access-date=2009-03-30 |url-status=dead |archive-url=https://web.archive.org/web/20090331031525/http://creators.xna.com/en-US/news/downloadhistorynews |archive-date=March 31, 2009 }}</ref> Microsoft also distributed a free year premium App Hub subscription for educational establishments through their [[DreamSpark]] program and [[MSDNAA]]. These accounts allowed students to develop games for the Xbox 360, but developers still needed a premium Xbox Live account to submit their game to the marketplace. ==Alternative implementations== A project called [[MonoGame|Mono.XNA]] was formed to port XNA to the open source and cross-platform [[Mono (software)|Mono]] framework.<ref>{{cite web|title=Mono.XNA |url=http://code.google.com/p/monoxna/ |access-date=2009-04-08}}</ref> From the codebase of Mono.XNA and SilverSprite, a new project called [[MonoGame]] was formed to port XNA to several mobile devices.<ref>{{cite web |url=http://www.monogame.net |title=MonoGame: Write Once, Play Everywhere |access-date=24 March 2013}}</ref> As of version 3.0.1 (released March 3, 2013), support is stable for [[iOS (Apple)|iOS]], [[Android (operating system)|Android]] including [[OUYA]], [[Mac OS X|macOS]], [[Linux]] and [[Metro (design language)|Metro]] for [[Windows 8]], [[Windows RT]] and [[Windows Phone 8]], as well as [[PlayStation Mobile]] in 2D. [[PlayStation Mobile]] 3D and [[Raspberry Pi]] development are currently in progress.<ref>{{cite web|title=MonoGame Wiki |website=[[GitHub]] |url=https://github.com/mono/MonoGame/wiki |access-date=2013-03-24}}</ref> FNA<ref>{{Cite web |title=About FNA |url=https://fna-xna.github.io/ |access-date=2023-02-21 |website=FNA}}</ref> is a full-featured open source reimplementation of XNA forked from MonoGame. The goal of FNA is to preserve the XNA game library by reimplementing XNA itself. An open source project called Grommet contains a limited port for embedded devices using the [[.NET Micro Framework]].<ref>{{cite web |title=Grommet - A .NET Micro Framework Library |url=http://grommet.codeplex.com |archive-url=https://web.archive.org/web/20091104081119/http://grommet.codeplex.com/ |archive-date=2009-11-04 |access-date=2009-11-02 |website=[[CodePlex]]}}</ref> A project called ANX is available which implements its own version of XNA using the SharpDX stack; support for [[Linux]], [[Mac OS X|macOS]] and the [[PlayStation Vita]] is in progress as well.<ref>{{Cite web |title=AXN.Framework |url=http://anxframework.codeplex.com/ |archive-url=https://web.archive.org/web/20111128101105/http://anxframework.codeplex.com/ |archive-date=2011-11-28 |website=[[CodePlex]]}}</ref><ref>{{Cite web |title=SharpDX |url=http://sharpdx.org/ |url-status=live |archive-url=https://web.archive.org/web/20230116185138/http://sharpdx.org/ |archive-date=2023-01-16 |access-date=2023-02-21 |website=SharpDX}}</ref> Using ANX, developers are able to write games using code that is very similar to XNA, while still being considered a [[Metro (design language)|Metro]] application in Windows 8. ==See also== * [[Game engine]] * [[Game development tool]] * [[MonoGame]] * [[Adobe Integrated Runtime|Adobe AIR]] * [[Win2D]] ==References== {{Reflist|30em}} ==Further reading== {{refbegin}} * {{cite book |first1 = Chad |last1 = Carter |date = March 7, 2009 |title = Microsoft XNA Game Studio 3.0 Unleashed |publisher = [[Sams]] |edition = 1st |page = [https://archive.org/details/microsoftxnagame0000cart/page/792 792] |isbn = 978-0-672-33022-3 |url = https://archive.org/details/microsoftxnagame0000cart/page/792 }} {{refend}} ==External links== {{Wikibooks|.NET Development Foundation}} *[https://web.archive.org/web/20080517163516/http://msdn.microsoft.com/xna/ XNA Developers Center] ;Training resources *[https://web.archive.org/web/20100524155033/http://www.xnavideotutorial.com/ XNA Video Tutorials] *[http://xnacommunity.codeplex.com/ XNACommunity] {{Webarchive|url=https://web.archive.org/web/20150808042219/http://xnacommunity.codeplex.com/ |date=August 8, 2015 }} at [[Codeplex]] *[http://rbwhitaker.wikidot.com/xna-tutorials XNA Tutorials] at ''RB Whitaker's Wiki'' *[https://web.archive.org/web/20150801183110/http://gamedevelopedia.com/ XNA Tutorial/Workshop Website] *[http://xnameetingpoint.weebly.com/ XNA Meeting Point: Tutorials in English, French and Spanish] {{Xbox}} {{Microsoft APIs}} {{Xbox 360}} {{Authority control}} [[Category:.NET Framework terminology]] [[Category:Microsoft application programming interfaces|XNA]] [[Category:Microsoft development tools|XNA]] [[Category:Programming tools for Windows]] [[Category:Video game engines]] [[Category:Xbox 360 software]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Authority control
(
edit
)
Template:Citation needed
(
edit
)
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:Dead link
(
edit
)
Template:Failed verification
(
edit
)
Template:Infobox software platform
(
edit
)
Template:Main
(
edit
)
Template:Microsoft APIs
(
edit
)
Template:Refbegin
(
edit
)
Template:Refend
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Sister project
(
edit
)
Template:Use mdy dates
(
edit
)
Template:Webarchive
(
edit
)
Template:Wikibooks
(
edit
)
Template:Xbox
(
edit
)
Template:Xbox 360
(
edit
)