Microsoft XNA

Microsoft XNA
Developer(s) Microsoft
Target platform(s) Xbox 360, Windows, Windows Phone
Editor software XNA Game Studio
Player software XNA Runtime
Format(s) XNB
Programming language(s) C# and Visual Basic .NET[1] (officially)
Application(s) Video games, Console games, Mobile games
Status Discontinued[2][3][4]
License Freeware

Microsoft XNA (a recursive acronym for XNA's not acronymed[5]) is a freeware set of tools with a managed runtime environment provided by Microsoft that facilitates video game development and management. XNA is based on the .NET Framework, with versions that run on Windows NT, Windows Phone and the Xbox 360. XNA content is built with the XNA Game Studio, and played using the XNA Framework (for Windows games), or published as native executables (for Xbox 360, Windows Phone and Zune).

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 that run on a variety of Microsoft platforms. XNA is the basic platform for Xbox Live Indie Games.

The XNA toolset was announced 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. XNA Game Studio 2.0 was released in December 2007, followed by XNA Game Studio 3.0 on October 30, 2008. XNA Game Studio 4.0 was released on September 16, 2010 along with the Windows Phone Development Tools. According to an email sent on 31 January 2013, XNA is no longer being developed,[6] and it is not supported under the new "Metro interface" layers of Windows 8 nor on the Windows RT platform.[7]

An open source cross platform version of the Microsoft XNA 4 Application programming interface called MonoGame is being developed, and a crossplatform reimplementation of the XNA API called FNA exists as well.

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 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# in XNA Game Studio Express IDE and all versions of Visual Studio 2008 and 2010 (as of XNA 4.0)[8] are officially supported.[9] Support for Visual Basic .NET was added in 2011.[10]

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.[9] 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.[11]

XNA Game Studio

XNA Game Studio is a programming environment for development of games.[12] Five revisions have been released so far, but as of 2015, no new versions will be developed.[13]

XNA Game Studio Express was the first version released on August 30, 2006, and was intended for students, hobbyists, and independent (and homebrew) game developers.[14][15] It was available as a free download. Express provides basic "starter kits" for rapid development of specific genres of games, such as platform games, real-time strategy, and first-person shooters. Developers could create 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.[16] XNA Game Studio 2.0 features the ability to be used with all versions of Visual Studio 2005 (including the free Visual C# 2005 Express Edition),[17] a networking API using Xbox Live on both Windows and Xbox 360 and better device handling.[18]

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.[19] 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.[20]

XNA "Game Studio 4.0 Refresh" was released on 6 October 2011, and added support for Windows Phone 7.5 (Mango), and Visual Basic.[21]

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".[12]

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.[22] 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.[23] 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.

Games created using XNA Game Studio may be distributed via the Windows Phone marketplace, and formerly via Xbox Live Indie Games.[24] The software may also be used to create commercial games which target Windows.

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.[25] Many winners are notable developers in the Indie Game community.

Xbox Live Indie Games

Xbox 360 games written in XNA Game Studio could be submitted to the App Hub,[26] 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 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.[27]

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 Mono.XNA was formed to port XNA to the open source and cross-platform Mono framework.[28]

From the codebase of Mono.XNA and SilverSprite, a new project called MonoGame was formed to port XNA to several mobile devices.[29][30] As of version 3.0.1 (released March 3, 2013), support is stable for iOS, Android including OUYA, macOS, Linux and 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.[31]

FNA, from game porter Ethan Lee is a full-featured open source reimplementation of XNA forked from MonoGame. It's used in many games, some of which can be seen here. 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.[32]

A project called ANX is available which implements its own version of XNA using the SharpDX stack, support for Linux, macOS and the PlayStation Vita is in progress as well.[33][34] Using ANX, developers are able to write games using code that is very similar to XNA, while still being considered a Metro application in Windows 8.

Partial list of games and companies that use XNA

Game Year Platform(s) Developer Publisher
Akane the Kunoichi 2011 Windows, Xbox 360, Windows Phone, iOS Haruneko Haruneko
Aliens vs. Romans 2013 Xbox 360 Sick Kreations Sick Kreations
Amazing Princess Sarah 2014 Windows, Xbox 360, Windows Phone, Xbox One Haruneko Haruneko
ApocZ 2014 Xbox 360 Sick Kreations Sick Kreations
Apotheon 2015 Windows, macOS, Linux, PlayStation 4 Alientrap Alientrap
Arelite Core 2017 Windows Dragon Slumber Dragon Slumber
A.R.E.S.: Extinction Agenda 2010 Windows, Xbox 360, OnLive Extend Studio Origo Games
Bastion 2011 Windows, macOS, Linux, Xbox 360, Chrome, iOS Supergiant Games Warner Bros. Interactive Entertainment
Battle High 2011 Windows, Xbox 360 Mattrified Games Mattrified Games
Biocide 2012 Windows Phone Tony Sakariya Tony Sakariya
Blazing Birds 2009 Xbox 360 Vector 2 Games Microsoft Studios
Bleed 2012 Windows, macOS, Xbox 360 Bootdisk Revolution Bootdisk Revolution
Bleed 2 2017 Windows, OS, X, Linux Bootdisk Revolution Boodisk Revolution
Blockhead 2011 Windows, Xbox 360, Windows Phone Nightmare Games Nightmare Games
Bloodline Champions 2011 Windows Stunlock Studios Funcom
Blueberry Garden 2009 Windows Erik Svedäng Erik Svedäng
Breath of Death VII 2009 Windows, Xbox 360 Zeboyd Games Zeboyd Games
BulletAsylum 2012 Windows Phone UberGeekGames Microsoft Studios
Bureau: Agent Kendall 2011 Xbox 360 Twist-edGames Twist-edGames
Capsized 2011 Windows, macOS, Linux, Xbox 360 Alientrap Alientrap
Charlie Murder 2013 Xbox 360 Ska Studios Microsoft Studios
Chime 2010 Windows, Xbox 360 Zoe Mode Valcon Games
Cloud Blaster 2012 Windows Phone Husky Paw Games Husky Paw Games
Comet Chaos 2013 Windows 8, Windows Phone 8 Beard Bandit Games Beard Bandit Games
Crackdown 2: Project Sunburst 2010 Windows Phone Seed Microsoft Studios
Crank Command 2012 Windows DYNAMaltee DYNAMaltee
Cthulhu Saves the World 2010 Windows, Xbox 360 Zeboyd Games Zeboyd Games
Dead Pixels 2012 Windows, macOS, Xbox 360 CSR-Studios CSR-Studios
Dead Pixels 2 2014 Windows, macOS CSR-Studios CSR-Studios
Decimation X3 2010 Xbox 360 Xona Games Reverb Communications
Dinora 2013 Xbox 360 Neuron Vexx Neuron Vexx
DLC Quest 2011 Windows, macOS, Xbox 360 Going Loud Studios Going Loud Studios
Dust: An Elysian Tail 2012 Windows, Xbox 360, macOS, Linux Humble Hearts Microsoft Studios
End of Days: Infected vs. Mercs 2011 Xbox 360 Sick Kreations Sick Kreations
End of Days: Survivor 2012 Xbox 360 Sick Kreations Sick Kreations
Escape Goat 2011 Windows, macOS, Linux, Xbox 360 MagicalTimeBean MagicalTimeBean
EvilQuest 2012 Windows, Xbox 360 ChaosSoft Games ChaosSoft Games
EvilQuest 2 TBA Windows, Xbox 360 ChaosSoft Games ChaosSoft Games
Face-Plant Adventures 2012 Xbox 360 oddworm games oddworm games
Fez[35] (FNA/SDL2 later[36]) 2012 Windows, macOS, Linux, Xbox 360 Polytron Trapdoor
Fist Puncher 2013 Windows, Xbox 360 Team2Bit Adult Swim Games, Team2Bit
Flotilla 2010 Windows, Xbox 360 Blendo Games Blendo Games
Fusion Genesis 2011 Xbox 360 Starfire Studios Microsoft Studios
Galactic Arms Race 2010 Windows Evolutionary Games Evolutionary Games
Gnomoria TBA Windows Robotronic Games Robotronic Games
Grey: The Lost Technology 2012 Windows, Xbox 360 Team Aurora Team Aurora
Guncraft 2012 Windows EXATO GAME STUDIOS EXATO GAME STUDIOS
Hacknet 2015 Windows, macOS, Linux Surprise Attack Games Surprise Attack Games
Ilomilo[37] 2011 Windows Phone, Xbox 360, Windows Southend Interactive, Microsoft Studios Microsoft Studios
Infiniminer 2009 Windows Zachary Barth Zachary Barth
I Made a Game with Zombies in It! 2009 Xbox 360, Windows Phone Ska Studios Ska Studios
Islands of Wakfu[38] 2011 Xbox 360 Ankama Play Microsoft Studios
KGB: Episode One 2010 Xbox 360 Sick Kreations Sick Kreations
Kodu 2009 Windows, Xbox 360 Microsoft Studios Microsoft Studios
Kung Fu Strike: The Warrior's Rise 2012 Windows, Xbox 360 Qooc Soft 7sixty
Light's End 2009 Xbox 360 Ryan Thorlakson Xbox Games Store
Lemon World 2010 Windows Alonso Leonardo CEFET-MG
Lucidity 2009 Windows, Xbox 360 LucasArts LucasArts
Magicka 2011 Windows Arrowhead Game Studios Paradox Interactive
Miasma: Citizens of Free Thought 2010 Windows, Xbox 360 ESP Games ESP Games
Miasma 2: Freedom Uprising 2012 Windows, Xbox 360 ESP Games ESP Games
Miner Wars 2081 2012 Windows, Xbox 360 Keen Software House Keen Software House
Nuclear Wasteland 2010 Xbox 360 Sick Kreations Sick Kreations
Orbox C 2013 Windows Phone ProGamix ProGamix
Over 9000 Zombies! 2014 Windows Loren Lemcke Mastertronic Group
Owlboy 2016 Windows, Linux, Mac OS D-Pad Studio D-Pad Studio
Plain Sight 2010 Windows Beatnik Games Beatnik Games
Pokémon 3D 2013 Windows Kolben Games Kolben Games
Potion Lore 2012 Windows Phone Hexfire Software Hexfire Software
Protect Me Knight 2010 Xbox 360 Ancient Ancient
Proxy Blade Zero 2014 Xbox 360 D6 D6
Reus 2013 Windows Abbey Games Abbey Games
Residue 2014 Windows The Working Parts The Working Parts
Rogue Legacy 2013 Windows, Linux, MacOS, XBox One, PS3, PS4, PS Vita Cellar Door Games Cellar Door Games
Rocket Riot 2009 Xbox 360, Windows Phone, iOS Codeglue THQ
Run-8 Train Simulator 2012 Windows Run 8 Studios 3DTrainStuff Skunkworks
Schizoid 2008 Xbox 360 Torpex Games Microsoft Studios
Score Rush 2010 Xbox 360 Xona Games Reverb Communications
Secrets of Grindea TBA Windows Pixel Ferrets Pixel Ferrets
Sequence 2011 Windows, Xbox 360 Iridium Studios Iridium Studios
Serious Sam Double D 2011 Windows, Xbox 360 Mommy's Best Games Devolver Digital
Skulls of the Shogun[39] 2012 Windows, Xbox 360, Windows Phone 17-Bit Microsoft Studios
Snops Attack! Zombie Defense 2012 Xbox 360 SnopsGames SnopsGames
SoccerTime 2013 Windows Phone T-Bag Games T-Bag Games
Solar 2009 Xbox 360 Murudai Murudai
Solar 2 2011 Windows, macOS, Linux, Xbox 360 Murudai Murudai
Soulcaster 2010 Windows, macOS, Linux, Xbox 360 MagicalTimeBean MagicalTimeBean
Soulcaster II 2010 Windows, macOS, Linux, Xbox 360 MagicalTimeBean MagicalTimeBean
Sol Survivor 2009 Windows, Xbox 360 Cadenza Interactive Cadenza Interactive
Stardew Valley[40] 2016 Windows, macOS, Linux, Playstation 4, XBox One ConcernedApe Chucklefish
Survivalist 2014 Windows, Xbox 360 bob_the_pr_bot bob_the_pr_bot
Terraria 2011 Windows, Xbox 360, PS3, iOS, Android Re-logic Microsoft Studios
The Adventures of Shuggy 2011 Windows, Xbox 360 Smudged Cat Games Valcon Games
The Bridge 2013 Windows Ty Taylor and Mario Castañeda The Quantum Astrophysicists Guild
The Dishwasher: Dead Samurai 2009 Xbox 360 Ska Studios Microsoft Studios
The Dishwasher: Vampire Smile 2011 Xbox 360 Ska Studios Microsoft Studios
The Fall of Gods 2012 Windows, Xbox 360 Geex Games Geex Games
The Harvest 2010 Windows Phone Luma Arcade Microsoft Studios
The Path of Go 2010 Xbox 360 Microsoft Studios Microsoft Studios
The Undead Syndrome 2012 Xbox 360 MUKAGOSOFTWARE DEVELOPMENT MUKAGOSOFTWARE DEVELOPMENT
They Bleed Pixels 2012 Windows, macOS, Linux Spooky Squid Games Spooky Squid Games
Tile Rider 2014 Windows Phone 7 Soft Pillows 7 Soft Pillows
Undead Carnage: Redemption 2012 Windows Phone PixelsFury Games DevRain Solutions
Underrail[41] 2015[42] Windows Stygian Software Stygian Software
Veks and Silence 2009 Xbox 360 Edible Entertainment Pty Ltd Edible Entertainment Pty Ltd
Weapon of Choice 2008 Xbox 360 Mommy's Best Games Mommy's Best Games
Yo-Ho Kablammo 2009 Xbox 360 Canalside Studios Microsoft Studios
Zeit 2 2011 Windows, Xbox 360 Brightside Games Ubisoft

See also

References

  1. https://msdn.microsoft.com/en-us/library/hh477142.aspx
  2. Rose, Mike (February 1, 2013). "It's official: XNA is dead". Gamasutra.
  3. "XNA Is Dead: 3 Alternatives That Let You Use Your C# Skills". Lifehacker. February 2, 2013.
  4. Williams, Chris. "XNA is Dead; Long Live the New XNA, MonoGame". Code Magazine. Retrieved May 8, 2016.
  5. "ANX.Framework (ANX's not XNA... but kind of) | Coding4Fun Blog | Channel 9". channel9.msdn.com. Retrieved 2015-01-07.
  6. Crossley, Rob (31 January 2013). "Microsoft email confirms plan to cease XNA support". CVG. Future Publishing.
  7. Klepek, Patrick (16 September 2011). "The Future of XNA Game Studio and Windows 8". Giant Bomb.
  8. "App Hub - downloads". Archived from the original on 2015-02-04.
  9. 1 2 Microsoft XNA Frequently Asked Questions
  10. "Code sample details: Game State Management (, C#/VB)". xbox.create.msdn.com. Microsoft. 24 May 2011. Retrieved 2013-06-15.
  11. Brian Keller: "Will XNA tools be able to help reduce game sizes?"
  12. 1 2 "XNA Game Studio". Retrieved 2007-03-20.
  13. "Microsoft kills XNA". ExtremeTech. February 1, 2013.
  14. Gamefest announcement of XNA Game Studio Express Archived August 20, 2006, at the Wayback Machine.
  15. XNA Game Studio Express Archived May 5, 2008, at the Wayback Machine.
  16. XNA Creators Club Online - quick start guide Archived October 12, 2008, at the Wayback Machine.
  17. XNA Tutorial
  18. XNA Team Blog : XNA Game Studio 2.0 Released
  19. "xna game studio 4.0 available for download!". XNA Game Studio Team Blog. Microsoft. September 16, 2010. Retrieved September 16, 2010.
  20. "What's New in XNA Game Studio 4.0". MSDN. Microsoft. Retrieved September 16, 2010.
  21. "XNA Game Studio 4.0 Refresh". Downloads. Microsoft. October 6, 2011.
  22. "Download GDC 2009: XNA Game Studio Program Overview from Official Microsoft Download Center". Microsoft.com. Retrieved 2013-06-15.
  23. XNA Game Studio 2.0 Software License Terms
  24. Winterhalter, Ryan (April 29, 2011). "31 Homebrew Games Worth Playing". 1UP.com. Retrieved May 1, 2011.
  25. Dream Build Play, Alfred Thompson
  26. App Hub Archived 2015-02-08 at the Wayback Machine.
  27. "Download History News". Archived from the original on March 31, 2009. Retrieved 2009-03-30.
  28. "Mono.XNA". Retrieved 2009-04-08.
  29. MonoGame
  30. "MonoGame: Write Once, Play Everywhere". Retrieved 24 March 2013.
  31. "MonoGame Wiki". Retrieved 2013-03-24.
  32. "Grommet". Retrieved 2009-11-02.
  33. ANX
  34. SharpDX
  35. "The Future of XNA Game Studio and Windows 8". Giantbomb.com. Retrieved 2012-06-26.
  36. FEZ 1.12 by Renaud Bédard on theinstructionlimit.com (August 16, 2016)
  37. "Windows Phone 7 App of the Week: Ilomilo". wintersupersite.com. Retrieved 2012-07-01.
  38. "JeanBaptistePortfolio" (PDF). www.jbriguet.com. Retrieved 2012-06-26.
  39. "Interview Skulls of the Shogun Dev on asynchronous multiplayer and xbla". xblafans.com. Retrieved 2012-07-19.
  40. "ConcernedApe comments on Stardew Valley". Retrieved 2016-02-29.
  41. "Mac/Linux Support? :: Underrail General Discussions". Stygian Software. 24 September 2013. Retrieved 29 August 2014.
  42. "Underrail - An indie role playing game". Stygian Software. Retrieved 9 February 2015.

Further reading

Training resources
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.