Thursday, September 18, 2008

XNA FBX and Custom Loader

At Sandswept Studios we are working on a Hack-n-slash side scroller.
We were using the SkinnedModelProcessor but is had some problems.
  • Some models displayed all twisted up. We then did lots of tweeks in Maya and sometimes it worked, and sometimes not.
  • We need our 3D modelers to be able to drop a model into the Content directory and immediately see the model in the game.
  • We need to Mix-n-Match meshes, animations, and textures. For example, the player may change weapons.
  • We need to detect end of animation, movement of bones (LimbNodes) and such for in game event and attack/collision detection.
  • We need to be able to dynamically modify models meshes, for example, exploding monsters.
  • We need to be able to use the same texture between models.
  • We need to be able to strip the models of any unnecessary data so we have the smallest possible data set.
  • It has to run on the PC and the XBox.
  • When run on the XBox the FBX file should be pre-built into a binary format that reads really fast and is compact. (Not yet implemented)
Well, that's a tall order. In short, we picked apart the FBX files format and learned how to load the ascii FBX file, and display the animated model on screen in the game. There is a dearth of info on the FBX file format. The next few posts here will be about how it is done.

Shameless commercial plug: If you are interested in using our library in your game, contact me and we can arrange it. We are thinking of a initial low fee to develop with the library, and a single lump sum when (and if) your game makes any money.



Unknown said...

Hello, i'm interesting in the code of your posts, but it's cuted right.

¿Can you doing something?

Thank you very much and congratulations for your blog.

Javier Alcón.

enzoravo said...

hello i'm really interested in your xna fbx custom loader, i'm making a remake of lode runner in 3d, but i'm having a big trouble with the two models that i'm using, i'm trying to export in fbx or x format but all the exports may result in one or another kind of error, if your custom loader works fine, i will buy from you, this is my email i will be waiting for your response.