The latest release of XNAExtras is 1.0.1201 (beta). It can be downloaded here.

XNAExtras is a collection of tools and classes designed to help out with some aspects of writing XNA applications. It currently consists of:

  • BMFontGen : A tool to create bitmap fonts from Windows system fonts. Supports Unicode and allows glyph ranges and custom glyph images. See the full documentation for more information.
  • BitmapFont : Class to load and render fonts created with BMFontGen. (BitmapFont.cs)
  • TextBox : Class to manage more complex text rendering, includes support for rendering text borders to create UI elements. Makes use of BitmapFont and Border. (TextBox.cs)
  • XSprite : Classes to manage sprites. Supports shared textures, different framerates for each sprite, keeps sprites sorted by depth (so that transparency works correctly) and allows sprites to be loaded from an XML descriptor file. (XSprite.cs, XSpriteBase.cs, XSpriteGroup.cs, XSpriteManager.cs, TexturePool.cs)
  • Border : Class to draw sprite-based borders. Makes use of XSprite. (Border.cs)

Version 1.0.1201 beta (2006-Dec-01)

Updated project files for beta2
Added #ifdefs around code that won't compile on Xbo360
Added readme.txt to note that CollisionDemo has known bugs
(BMFontGen) Include 1119 build of BMFontGen
(BitmapFont) Add ContentManager support
(TextBox) Fixed bug where background wasn't being deleted
(XSpriteManager) Added ContentManager support
(TexturePool) Added ContentManger support

Version 1.0.0923 beta (2006-Sep-23)

(BMFontGen) Fixed bug where including undefined chars in your font -range would cause a crash
(BitmapFont) Changed loading embedded resources - now the resource name is specified in the same format as file-based resources
(BitmapFont) Fixed bug where font files wouldn't be found unless they were in a subdirectory
(TextBox) Added accessors for the text string
(XSpriteManager) Changed default FPS to 60
(XSpriteManager) Added support for collisions
(TexturePool) *Really* fixed bug in AddTexture(string,Color) where the texture wasn't being created if the GraphicsDevice already existed - the fix got lost for the last release
Thanks to redwyre, David Zakar (DMZ) and Matt Moore for comments/suggestions.

Version 1.0.0916 beta (2006-Sep-16)

(XML Schema) Added XML schema definition (XSD) files for bitmap and texture files
(BMFontGen) Fixed bug where custom glyphs couldn't replace chars that didn't exist in font
(BitmapFont) Added Dispose method
(BitmapFont) Fixed TextBox to format the string only once
(BitmapFont) Allow fonts to be loaded from embedded resources
(BitmapFont/XSpriteManager) Changed GetXMLAttribute to not throw exceptions
(XSpriteManager) Changed sprites to sort by order of creation when at the same depth
(XSpriteBase) Added Visible property
(XSprite) Added SetTexture method
(XSprite) Expose sprite alpha value directly
(TexturePool) Fixed bug in AddTexture(string,Color) where the texture wasn't being created if the GraphicsDevice already existed
Thanks to David Zakar (DMZ), redwyre and Martin Szinger for comments/suggestions.

Version 1.0.0910 beta (2006-Sep-10)

Initial XNAExtras release
Initial release of TextBox, Border, XSprite, XSpriteManager, XSpriteBase and TexturePool.
Add font face name, size and style info to BMFontGen output
Add option to BMFontGen to prevent custom glyphs from being tinted when drawing colored text
Fix BMFontGen crash when cancelling the font select dialog
Fix path problem in BitmapFont where font image files weren't found if the font was in a subdirectory
BMFontGen no longer uses a substitute font when the requested font is unavailable
Changed GlyphInfo struct (in BitmapFont) to use bytes/sbytes instead of ints
Changed "origin" attribute in font XML files to "loc" (location) since this is a better description and is more consistent with usage in sprite/texture XML files. Fonts created with "origin" attribute are still supported.
Removed support for ClearType font rendering in BMFontGen because the antialiasing introduces color around the edges of the font. These color bleeds don't render properly and are inappropriate for cases where the font bitmap is rotated or used as a texture on a 3D object.
Thanks to David Wyand, Thijs Kruithof (Gleoi), Jim Welch and Roger Bocksnick for their comments/suggestions.

Version 1.0.0830 beta (2006-Aug-30)

Initial BMFontGen/BitmapFont release