MAYA, PLUGINS - brainbugz

Big Thanks for Beta Testing go to : Bruno Pollet (Alias|Wavefront Europe), Max Parovsky (Hidden Dragon Films, L.A.), Thomas Herrmann (Second Unit, Munich)

brainbugz is a set of A|W Maya nodes and commands that enable you to use behavioural animation techniques on particles. A particle system is a system in which forces such as gravity or wind are applied to mass-points, so that these mass-points change their position in space. In contrast to this, in behavioural animation mass-points are not forced from the outside, forces are self applied based on physical attributes and one or many behavioural rules. These so called steerings desires can be clever combined and attached to a number of mass-points, so these mass-points are no longer simple physical objects, but become autonomous characters, referred to here as „bugs“.
This concept tries to reflect real life on an abstract level, where all characters act based on individual behavioural rules, their view of the world and the other characters surrounding them. Think of a school of fish, a flock of birds, athlets running a marathon - all groups of individuals with local behavioural rules (avoid touching the other characters, get from point A to point B, try to stay near the other group members, ...), but the sum of all indicidual local movements results in a more or less coordinated crowd motion.


A bunch of spiders, crawling on uneven terrain and avoiding obstacles.
Behavioural particle motion was converted to paths using this tool. Spiders driven by an expression based walking system for legged motion were attached to these paths.

Particles performing the infamous flocking behaviour.


- 13 different steering desires:
   individal bug based: head direction, wander
   target based: seek, moth-seek, arrival, pursuit, shadow, following of curve / surface, obstacle avoidance
   neighbor based: alignment, cohesion, separation, keep distance
- all desired can be used as stand alone force fields
- desires can be combined with each other and / or standard fields to achieve complex higher level behaviours (e.g. flocking)
- easy to use interface, no scripting needed to setup a behavioural system

The connection editor which lets you set up even complex behavioural systems very fast without the need for any scripting:

brainbugz Documentation (opens in a new browser window)

melfunctions, Copyright (C) 2006 Carsten Kolve
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, if not, visit or write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

If you are finding this software useful please consider donating some money to a charity of your choice. If you are not sure which charity to donate to, I recommend the Doctors Without Borders / Medicines Sans Frontieres. Here is a webpage with a list of their national offices. It's best to donate to your national office as they can provide you with tax receipts.
As to the question how much to donate, well that is entirely up to you - please do however take into account the amount of money it would have cost you to develop a similar solution inhouse, how much money you save by using it, all donations are tax deductible and you are supporting a good cause! :-)

Please let me know if you do make a donation - I'd like to know if something like this actually works.


Before downloading anything, please make sure you have read and understood the disclaimer!

 ALL IN ONE brainbugz v1.3 (located on Highend3D)

contains brainbugz including documentation and example
scenes for Maya:
Win 4.0-8.5
Mac OS-X 6.0
and Linux 6.5

Thanks to everyone who supplied bugfixes and recompiled versions!

 SOURCE CODE brainbugz v1.3

You recompiled brainbugz for your favourite platform? Don't hesitate to send it and I'll add it to the list!

Q: I can't see the bbCombineDesires node in my outliner, what is wrong?
A: The bbCombineDesires node is not a DAG node and as such is not displayed in the outliner by default - to make it visible simply turn off the option in the outliner to view only DAG nodes.