Seen In The Demo
-Ability to switch between 8 different skins
-Skinned animations when visual state (hovering, pressed) changes (size, position and color)
-Skinned animations on any event fires (OnClick, etc)
-Various different widget types
-Adaptability to different screen sizes
Finished but not Visually Evident in the Demo
-Matrix SpriteBatching:
This is an extension to the normal XNA Spritebatch, that allows you to push transformation
matrices without needing a new draw call. It also handles keeping track of different variables in
Begin calls as well as clipping rectangles.
-Spritesheet Animations:
Every Widget is created from defined texture regions, and definitions as to how to respond to
resizing. Any source texture box can instead be a spritesheet definition, allowing the skinner to
include animated textures. Blinking buttons? flowing gradiants? It's all possible!
-Gradient-Defined Progress Bars:
Define how a progress bar fills by using a gradient image. The gradient will then use a fill texture
to fill from black to white, based on the fill percentage. These gradients can also be defined as
animated textures, allowing you to have wavy, bubbly progress bars to use as health bars, or
whatever you want!
Features to Come
Cross Platform Facade:
MonoGUI already supports some, but will eventually support more commonly-used Platform
Specific implementations of features such as In App Purchases, saving data and logging. This will
allow the game writer to minimize the amount of platform specific code in their game.
Skin-Defined Sound Effects:
Allows the skinner to define sound effects to play on various widget events.
Visual Skin Editor:
A small program (written in MonoGUI!) that allows easy visual editing of Skins.
I'm very excited to start releasing this open source project to the public, and see what cool things are done with it! It should be ready for its initial release within the next few weeks.