Hierarchical animation using trigonometric functions:
This program was written in C++ for my Computer Graphics
MSc assignment. It is a simulation where a varying number
of robots made by transformed cubes walk in different
directions without collisions. The robot parts are parts
of a transformation hierarchy. Trigonometric functions are
used for the animation.
A demonstration on youtube:
The robot parts are part of a hierarchy tree:
Each robot part is a cube scaled and transformed to have the desired size and position.
It is then rotated around a point (pivot), whose position is calculated relatively to its parent pivot point position.
The robot is animated using trigonometric functions. Their output is restricted to match the rotation angles of the human
The total transformation of each part consists of its transformation parameters
concatenated with its parent transformation. In essence, while rendering the
robot we traverse the hierarchy multiplying transformations as we go down the