#1: flocking

I've had less time than I thought this week, but I am making progress!



It doesn't look like much (this may be a trend this week) but I'm pretty happy as I wrote my first flocking algorithm (thanks to the excellent tutorial by Conrad Parker, based on Craig Reynolds work). The routine is really cool in that it's built up from small components, so it's fun to play with by adding and subtracting things.

Of course there are a few sticking points I'm keeping my eye on, but hopefully won't have to worry about too much. Currently performance is OK, and my laptop definitely isn't new or top-of-the-line -- if things do start to drag I have a vague plan to use NumPy and the Doom inverse square root function ;). Second I haven't quite nailed collision avoidance in combination with flocking. I'm just using rectangle collision and under certain parameters of the flocking routine, the sprites still collide. So I'm not sure how to deal with that -- except by tweaking the parameters of the flocking ;).

Hoping to work on some audio tonight. My concept with this is not that ambitious (about the same as my Ludum Dare entry), but I'd like to get something more complete done by Saturday.

(log in to comment)

Comments

I love Boids. I've also worked with them quite a lot, even applying them to object tracking in computer vision. Reynolds offered an impressive solution to group movement behaviours.

One of Boid's problems is precisely parameter tweaking. But that's also part of their power! It takes a little bit of patience. Good luck with your entry! I'll have an eye on this one! :D