This project is part of a series of projects I created during the Intro to Compute Shaders workshop led by Arsiliath. The workshop introduces principles of programming used to model real time organic simulations on the GPU, using Unity and compute shaders (written in C# and HLSL respectively).
This project is my own exploration extending the concepts from one of the class assignments. Boids are a classic computer simulation in which a group of particles displays flocking behavior by way of each particle responding to the position of its neighboring particles through forces of separation, alignment, and cohesion. Boids is very simple to implement in a basic way, but suffers from the problem of exponentially becoming slower to calculate as the number of particles increases, due to the fact that every particle is measuring itself against every other particle in the simulation.
In my own exploration, I wanted to get more interesting results while keeping the number of boid particles low. To do this, I created a simulation consisting of one group of boid particles, and two species of physarum-like particles, that behave by physarum rules while also being influenced by the boids. This creates a leaders and followers relationship in which the boids influence the physarum simulation to be far more dynamic and fluid than it would be otherwise.