Welcome to Null City Software
Tasty, tasty software.
 
Null City Logo Home Kitae Breeze Products Login Forums Contact Us About Us
By NullCityAdmin on 27th Mar 2012 @ 06:01PM
It's finally complete, last night I put the finishing touches on the Kitae State Machine editor. I actually had the idea for this a while back, and built all the base classes and tested them, but wanted to finish the IK editor for Skeletal Actors before moving on to the editor for State Machines.



Kitae's state machines mean that at code-time you do not need to worry about what actions lead to what states. For example, player on a ladder would usually not be able to either jump or run left or right. He would likely only be able to climb up, down and drop. This kind of switch from state to state is handled entirely by the state machine based on the actions you feed in and the transitions you build to link one state to another. The whole point of the StateMachine classes are to remove large nested switch statements from your main loop. These are typically difficult to follow, hard to debug at runtime, and a pain to maintain. Anyone who has written any game before will be all too familiar with the spaghetti code that often plagues character update methods. Hopefully StateMachines will allow you to take control of this problem much more easily. Update loops can typically be written as a single switch state against the current state of the StateMachine, and StateMachines are much easier to visually debug in the Game Editor.

StateMachines can be used anywhere you would normally manage state, e.g. character Update methods, managing menu selection, etc.

I'm not 100% sure I've covered everything people will want to do with state machines, but for now, they are still very useful.
NOT dead!

I've had more time recently to concentrate on Kitae again, and the upshot is... Kitae now has fully working 2D IK Skeletal Actors and animations. Rather than explain all this, I'll let the following video do the explaining:



Skeletal Actors are composite actors made from Sprite Actors, and positioned specifically around a bone structure. You can build new and interesting bone structures easily in the new editor and you are not limited to humanoid figures. The character in the video was built from a few simple renders, and then carefully cut into sprites for each individual bone in the structure. Once you have your sprites, you can build a new actor with ease, it takes only a few minutes to piece the sprites together in a useful structure.

After constructing the skeleton, you can move and rotate the joints along keyframes in the animation editor and build smooth, interpolated animations from very simple keyframes, as demonstrated in the video.

Features / Reasons to use Skeletal Actors:
* Handles the animation and bone structure entirely for you.
* Easily add geometry to parts of the body, and collide against other actors on a per bone basis.
* Easily add new animations to game characters.
* Swap out graphics for parts of the body. Skeletal Actors allow you to switch look/feel (e.g armour).
* Control bone structures via code to animate programatically.
* It's just cool!

This is the product of about 2 months work on and off and has been a fun little addition to Kitae. It was fantastic seeing the animations work for the first time in the game editor. However, getting geometry and flipping working correctly - not as much fun. Hopefully I'll be able to leverage this into a new game at some point soon.

Next up - editor support for State Machines.
Then maybe a release? Who knows. Will try to keep this space more updated.
Null City Software
Null City is dedicated to developing top quality sofware products for Windows PC, XBox and Windows Phone. We specialise in games and .NET applications & components.