This is a BETA version of my up-and-coming .x file loader and renderer. I am releasing this version to collect bug reports for any that would like to test it out. I'm hoping to get plenty of people loading .x files from different exporter plugins from different modeling packages with different settings. That way, I can adjust my .x loader code if needed. The code does not appear to be buggy, at least in the extensive tests I've done, but the code itself may not be that clean if you want to search through it. I am currently in the middle of developing this so far.
When exporting your .x file, make sure you have these settings enabled:
-Right-hand coordinate system
-The file MUST BE text-based (ASCII)
-If animations are being exported, make sure they are stored as quaternion, scale, position keys, and not matrix keys (I removed most of the matrix key support although it will load)
-Make sure your .x file is as un-optimized as possible, and does not use vertex weights. Although the .x loader loads the index lists, I do not support them entirely when drawing because it causes some conflict with animations at the moment.
-The file needs to contain frames, otherwise, the data will not be drawn (that is actually an bug I need to fix)
-Make sure that all meshes in the file is linked to a single root bone-- this only applies to files with animation data in them (I'm having trouble with multiple root bone support at the moment;)
Also, only one texture can be placed to these objects, that is not handled by the .x loader. The loader does handle texture coordinates. The rendering class handles setting the textures. See the tutorial for a better explanation.
Please note that some of your models may be rotated differently on the PSP than in your editor. This will cause your models to position differently than normal as well when moving them with the object::move() function. This is probably due to the coordinate system used in the modeling package you are using. I am using 3Ds Max, and its y and z axis are swapped. If your exporter allows you to export certain key frames, and not the whole key frame list, then take advantage of that because this exporter supports interpolated animations. It does not support vertex skinning (vertices attached to multiple bones). If anyone has any models that require multiple vertex weights, and wouldn't mind sharing, please donate them to me in .3ds form.

The release is in demo-form, and has some other parts of my engine in it (the stuff in early stages). The demo should show a biped skeleton made with Character Studio doing a crappy version of Super Mario's long jump with a bunch of boxes attached to various bones (I was still learning).

There should also be a box attached to the biped's left hand which can be rotated by holding the up or down directional buttons.
Any comments, suggestions, or optimizations on any of the code are welcome!

Special Thanks to:
IWN & Raphael for all their help, and for Raph's vram manager which is used is required to run this. You can get it here:
http://www.psp-programming.com/forums/index.php?topic=1840.0That library must be in the same directory as the rest of the source code. Enjoy!
EDIT: I'll be putting up some screenshots of other tests I've been doing. They are pretty good. I made am animated jail cell based off of the ones in Crisis Core! Also, the current release is built for 1.5 PSPs right now. I can't get my PSP to an m33 version just yet... I'll be there one of these days when I get Linux figured out.