It was a long time since I posted anything, and that with good reasons, I assure you. Well… Maybe not, I’ve just been playing a bunch of games.
Anyway. The update I made for the engine is a pretty small one actually. I implemented animation into the custom model file format I wrote about a while back.
The animation is right now keyframe based, so there are no data available for bone animations and such, which sucks a little. But I’ve got to start somewhere.
How it works is that I first have a list of all the vertices used for each frame at the very top of the model file.
After all the frames are printed out I print out the data that remains the same regardless of frame, the normals, uv-coordinates and faces.
With this I can simply loop through all the vertex data and display any frame in my engine.
I actually made a completely new file format for this idea since I didn’t want to “ruin” my custom “.SA3” file format with vertex animation (I’ve got advanced plans for .SA3). So I made the “.KMD” file format which is an abbreviation of “Keyframe Model Data”.
I am right now as- I type this, actually, studying the math behind Quaternions since I’ve been avoiding them for quite a while. I’m learning that so I can implement bone animation and vertex weights to the “.SA3” file format.
I have mentioned this back when I first started writing about my file format that it’s highly inspired from the DooM3 model file formats .mesh and .anim, since my format works much like them.
So there you have it. My engine is pretty much in the same state Quake 1 was in when it was new. Not very impressive but at least it’s my own work. 🙂
Furthermore the engine development is going pretty shaky due to reasons that are not my own fault, for once. It’s the whole OpenGL 3.x thing, I don’t know yet if it’s worth the effort to start working on that instead of my 2.x implementation. We’ll see how it goes. In the “worst” case I’ll just have to convert to DirectX which in a way isn’t that bad.
Yes, yes. Stay awesome. Bye! 😀