Janani Sridhar, Winter 2019
Originally, I had wanted to make an interactive project where the user is a herder and must herd bunnies moving randomly. However, I chose to focus on implementing the Boids behavioral model which is an explanation of how to model flocking behavior.
For this project, the technology is not the main focus: the math is. There are three main forces in the model:
I had to orient the bunnies to move in a different direction when they collided into a wall, and used dot products to rotate them and calculate the new velocities. The bunnies will continue to collide into a wall if the goal is set as such--the user is responsible for setting an appropriate goal. There is a "leader" bunny that will come forward depending upon its position, and guide the rest of the bunnies to the goal. The leader bunny will change as the goal changes.
At the beginning, the bunnies will be somewhere in the middle, in some random positions with orientations differing slightly.
As the goal changes, a leader bunny comes forward and leads the rest of the herd.
The bunnies change orientation as they head towards goals.