Hey all, you've read the title, now read the post. I have been experimenting with making KBOTS, those 2-4 legged war machines from Total Annihilation.
I've had mixed success.
What has been holding me up you may be asking... well I'll tell you. It's not the modeling, it's not the config file, it's not the scripts... I think it's the engine itself. We are creating walking animations with clever use of custom animations. This is the general process:
1. Axis points are set to every joint on the leg, named selections are set up for the different parts to be animated.
2. In the config file, we define these animations, and create several animations according to how the legs are supposed to move.
3. Finally, we have a script run for the unit that detects when it is moving, and animates the legs accordingly.
Here are some screenshots of how we set up the model with named selections.
And here are screens of the memory points. You will see that we have named selections in memory that mirrors that in
the resolution LODs, so that the memory axis move with the animations, ensuring that things turn where they are supposed to.
In a bulldozer demonstration, let me show you how it is SUPPOSED to work:
1. The entire leg is elevated using three custom animations. Each animation takes the hip, shin, or foot and rotates it 90 degrees using the hip axis.
2. Then, the shin and the foot are rotated back using two other custom animations who use the shin axis.
At this point, the leg is fully extended while the shin and foot are facing the ground. As a follow through, the animations are reversed to bring the leg back to it's initial position.
Unfortunately, this doesn't work in OFP. When these animations are run in the scripts, we see the hip, the shin, and the foot all operating independently. When I try to take a screenshot in OFP, I end up getting my desktop or a black screen. So I must show you what is happening using bulldozer screenshots:
As you can see, the hip rotates, but it does not pull the shin or the foot with it. Even though there are animations that specifically tell those sections to rotate along the hip axis, they refuse.
The problem: You can not define two different custom animations for the same named selection. When I remove the animations that tell the shin and the foot to use their own axis, the entire leg is able to move again. It seems that custom animations compete for control over a named selection.
I have also tried having the hip contain all sections in the model, the shin containing itself and the foot, and the foot defined by itself. This also fails, making the hip swing forward leaving the shin and the foot behind.
So what are your thoughts folks? Can we make KBOTS, MECHS, etc. with some more work and tweaking? The possibility is there, it's just that the animations conflict with eachother. If we can figure this out, it will be revolutionary.