ShnazzXNA Framework

04th November 2008

Lately I’ve been working on a XNA 2d framework just to make life easier for any future project of mine and for public usage. It’s at a point where I’m really happy with it thusfar.

Right now its current features are;

  1. Super game management class to manage all objects/game events
  2. Collision check (overridden between object) by game management
  3. Super object class which is extended for all in game objects
  4. SpriteObject class for single sprite objects, misc functionality like MoveTo()
  5. Base GUI object class
  6. Input management, instantiated by player index
  7. Easy sound manager
  8. GUI Objects without textures required (supports creation of square objects w/drop shadows, borders, etc)
  9. Object focus system, manages focus on objects to send input updates to and who to return focus to when lost
  10. Parent/child object systems
  11. Used c# events for all types of actions
  12. GUI system uses object attachment feature to define child gui object that are drawn within the parent GUI

What I’m planning on implementing;

  1. Primitive class, for easy creation of 2d primitives
  2. Simple physics systems
  3. Tilemap and tile systems
  4. Parallax scrolling object class
  5. Misc gui objects (drop down list, age entry, text box, button, etc)

More soon



I got a few emails about TD updates so I thought I’d just stop and take a screenshot of what I was working on while coding.

It's for real I swear!

What you see here may not seem like much, but essentially what I’m working on is a backend framework for Xbox/Windows games called ShnazzXNA. The idea is to allow me to rapidly develop games under the same set of code used for current and future projects. As it stands I have roughly 70% of the functionality in this framework that I used out of Torque so I’m doing well.

 The last leg before I can start migrating the gameplay code into C#/XNA from the Torque version is GUI code. XNA comes with no pre-made way of building interfaces so I’ll have to code one. Once I’m comfortable with the framework I plan on releasing it for public usage.


Tags: , , ,