The project is implemented in object-oriented C++ using the principles of polymorphism and inheritance and making use of the various parts discussed in the lectures and tutorials. OpenGL is used as a visualisation platform for the application. StarUML software is used to produce diagrams illustrating program architecture and the logic of the algorithm.
The development of the "Caco*Asteroid" project is adequately documented to the application runs as expected and has been tested accordingly. The "Caco*Asteroid" project site includes code listing and testing (expected screen shots). Source code is given on the site too.
In its basic development the collision detection and resolution algorithm supports circular shapes and handle an arbitrary number objects at the same time using a Quad tree.
So far as part of the advanced development in the "Caco*Asteroid" project the collision detection and resolution algorithm is extended to handle more arbitrary geometrical shapes including rectangular blocks and convex polygons.