Kangaroo as Simple Crowd Simulator

Hello,

I’ve been playing with this idea where you could use kangaroo 2 as a very simple crowd simulator. The method is simple: lock a point to a curve and give it a load in the tangent direction of the closet point on said curve. After that, mix in some circles/collisions/boundaries and different strengths to the goals to balance the system.

The problem I’m having is it seems there is no way to update the load on the point to be the new tangent vector of the line as the point moves. Maybe this isn’t possible or maybe I’m not noticing some nifty component in kangaroo 2. Thank you for any help you can offer.

Crowd Simulation 01.gh (12.8 KB)

Hi,

Not exactly made with Kangaroo, but potentially interesting for you and a through-back to 2019. :wink:

2021-04-17 20-29-08.2021-04-17 20_31_43

More here.

2 Likes

This example uses a slightly different approach, using directions on a mesh rather than a curve, but similar application and maybe useful for you:


Pulling along the tangent vector at the closest point on a curve as you describe would also be possible, but I think it would need a (fairly simple) custom Goal.

7 Likes

Here’s an example of that custom Goal pulling points along the tangent of the closest point on a curve:


pull_tangent.gh (18.9 KB)

8 Likes

Wow! Thank you Daniel, this is exactly what I was wondering about. I like the mesh approach even better but both are useful.

1 Like