This was a short programming project which I used as an exercise in low level OpenGL and C++. The project gave me the opportunity to learn about quaternion rotations, camera transformations and basic flocking behaviour. I developed custom camera code which takes advantage of quaternion rotations for a more natural user interface (similar to Maya’s navigation controls). There was also an interesting challenge in writing dynamic geometry for a realtime application, where the vertex-count of a given object would change during the course of the application.
Flocking behaviours we implemented at a very basic level but the code was written with the intent of going back and extending it further, with more complex behaviours.