The pace has definitely picked up since last week, we are having coding sessions at our group meetings which tells me we are on the right track. Even if we may not necessarily have the design of the game completely done yet, it is a good idea to start coding early. We are starting to talk about our code in more detail and depth, and I'm starting to understand more and more of the code base, and understand what needs to be improved. I've revised the animation system slightly, but I'm afraid I might have to gut the entire system and start from scratch. While the animation system Dan Cortens wrote for last semester was functional for the game and produced a relatively good looking result, the code was a little messy. Given that we were under pressure to complete the game as fast as possible, we didn't have time to make the code more efficient and neat.
Now that I am trying to add more animations to our Raptor (the ones I mentioned in week 2), I found out that the code for the animation system is not very extensible. Part of this was because my old method for animation was to spit every single frame out from Maya as an .obj file. This turned out to be 48 different .obj files for the running sequences alone (each sequence was 16 frames long). After figuring out that this was silly, I cut down the amount of files by a factor of 4. My key-frames in Maya happen every 4th frame, so it is only logical that I only export those out instead, which cuts down our loading time. The system doesn't really account for these new number of frames, not to mention it has to handle the interpolating parameters differently. For example, if the player just taps a key to turn right, the animation always finishes interpolating to the next frame before moving back (the Raptor completely swings its neck around, as if it is making a sharp turn). I want it so that the system only interpolates a percentage to the next frame, and if the key is released before it reaches it's target frame, it interpolates back to the original pose. This will make the Raptor look more natural when it is turning, or doing anything else for that matter. This way I also have much more control if I can manipulate the percentage of the animation, instead of just the next pose.
The goal for the next week or two is to have at least a working animation system, after I'm done that, it's time to implement all of the animations themselves and play around with the movement mechanics and see what feels right. After all, the animation and game play have to be matched at least somewhat or else it will look silly.
Some things that are still on our to do list: Fixing textures, lighting, figuring out shaders, completing the design, particle systems, shadows(?), and a whole bunch of other stuff. I want to make our animations as nice looking as possible before we move on to harder things that are required (mainly shaders, and other business/design docs that are requirements).
No comments:
Post a Comment