Hello, this is my CPE 471 Project Page
My project was to make a basic hierarchical model of a person doing complex animation.
How to Use the Program:
The program will start with the model performing a simple keyframe-based walking animation.
You can press Space at any time to change to posing.
In posing mode, you can manipulate (with X, Y, and Z rotations) the
model.
A and Q change the rotation with respect to the X-axis; S and W the Y-axis; and D and E, the Z-axis.
Pictures of the basic model
This ended up being just walking, because animating is difficult and tedious.
I decided to focus on being able to change the model's position within the program, because that was more interesting.
This required some significant changes to the data representation of my model transforms.
Hierarchical modeling is a pretty cool guy.
My intention was to build a framework that let a user specify object file names, pivot transformations, and a tree relationship (although I hadn't ironed out how to use plaintext for the last part). But I ran out of time so all I've got is an action figure posing.
Poses (programmatic transforms)
Things I Learned
- Hierarchical modeling works.
I wasted a lot of time trying to reinvent the wheel, when the matrix stack model was exactly what I needed.
- Graphics is cool!
(I knew this one already). But I definitely learned that it doesn't take a fancy interface to make a neat graphical program.
- I like making action figures better than animating.
- When you try to clean up your code and end up adding complexity, it's probably time to try another approach.
- Building things to work for any input is hella tricky. It might be worth it to build for your single use case instead.