This is my implementation of the seminal paper Flocks, herds and schools: A distributed behavioral model (from Craig Reynolds) that I made for a computer graphics assignement. The requirements were:

  • 3D world.
  • Simple illumination.
  • A controllable boid acting as a leader.
  • Four cameras:
    1. Behind the flock
    2. Beside the flock
    3. Behind the leader boid
    4. Fixed on some point and looking to the flock center

In addition to that, I implemented some extra features like:

  • Fractal landscapes.
  • Fog.
  • Pause.
  • Animated boids.
  • Controls to tweak my flocking algorithm constants.

During the runtime, the user can tweak the various parameters until satisfied with the results, as can be seen in the following video:


Source code available on GitHub

Updated: