Bird - Oids (Boids) is a concept created by Craig Reynolds to simulate herd behaviour of birds, ants and fish in games and simulations

*Note try keeping alignment factor low but not zero for optimal result as alignment vector can overpower the cohesion vector

Each Bird object follows 3 simple rules

  1. COHESION
  2. ALIGNMENT
  3. SEPERATION

COHESION

Each bird object will try to move towards the center of mass of surrounding bird objects

SEPERATION

Bird objects will seek to maintain a minimum distance between them so as to avoid overcrowding

ALIGNMENT

Each bird's velocity vector will be the average of the velocity vectors of bird objects that is in the bird's viewing distance

EMERGENT BEHAVIOR

With these three simple rules, the develop a very swarm intellegence. This technique is used to simulate fish, birds, clouds or even humans in the most effective manner

Herds of birds are capable of breaking apart on approaching an obstacle (difficult to get to work as seperation and sight should be optimal).

The emergent behaviour can be changed by adjusting the sliders on the page and , hence, anyone can switch on or off any rule and other properties pertaining to each bird such as max speed and noise

Noise - Refers to perlin noise  that ajusts the velocity of each bird gradually and , thus, effectively adds to the realise.

COLOR : color changes with the magnitude of boids a boid can see ( is in viusal range of the boid )

Only reference used : https://cs.stanford.edu/people/eroberts/courses/soco/projects/2008-09/modeling-n...

NOTE

  • Try keeping the max speed low so emergent behaviour can be effecitively studied .
  •  Sight need to be high for maintaining high seperation as the birds won't be able to see that far enough to measure the distance between themselves and other boids
  • Sepertion needs to be more than zero for obstacles to work
  • Alignment vector can take over the cohesion vector if alignment factor is too high

CONTROLS

1 . Click anywhere to summon a boid ( it is recommendedsummoning atleast 15 to get started)

2 . Press the obstacle button to cycle through different obstacle obejcts (might not work if sight is zero)

3. Press the reset button to reset the page

4. Have fun ( try to see what kind of behaviour you can create

Scope of improvement

I want to create more effective boids that instead work in 3D(either by adjusting the size if the bird moves up or down or working with 3D objects in 3D space)

comment any suggestions down below

Have a great day !!

-Arnav M (maname)

Leave a comment

Log in with itch.io to leave a comment.