A Behavior Container (beContainer) is a set of Behaviors and Operators connected together and resulting in a Behavior Graph (those Behaviors/Operators are called children of this Behavior Container, which is known as their parent Behavior). This node may be mapped to an Entity Type.
It consists at least of:
- A unique entry point called Initial Behavior
- A unique exit point called Final Behavior
Behaviors and Operators can be added to a Behavior Container and connected to each other. The Behavior Container is the only node which can be mapped to an Entity Type and it can be shared between different Entity Types.
Notice that sharing the same Behavior Container does not necessarily mean that all the Entities of an Entity Type will move in the same way. Operators and Triggers can be configured in various ways to add some diversity.
- Behavior Editor / Behavior Library:
- Behavior Editor Workspace: drag and drop a Behavior Container a Behavior Operator or a built-in Behavior on an operator inner flow
- Shortcut: CTRL+G to group selection in a new Container Node
- Golaem Menu: Crowd Behaviors / CrowdBe Container Node
- MEL command: glmCrowdBeContainerCmd;
Notice that when creating an Entity Type, a Behavior Container will be automatically created and connected.
Notice that those following attributes are automatically set by the Behavior Editor when behaviors are added, deleted or modified.
|Children||Behaviors and Operators contained in this Behavior Container.|
|Starts with||The Behavior/Operator next to the Initial Behavior (e.g. the Behavior/Operator connected to the Initial Behavior through its unique outgoing flow).|
|Finishes with||Behaviors and Operators previous to the Final Behavior (e.g. Behaviors and Operators connected to the Final Behavior through its incoming flows).|
Expand/Collapse a Container
A Behavior Container can be expanded/collapsed inside the Behavior Editor workspace. By default the Behavior Container is expanded.
Expand a Behavior Container
The expanded Behavior Container offer a synthetic preview of the Container's children. It also allow to design the Behavior Graph from the current container hierarchy level with the classic controls.
Expanded Behavior Container
Right-click on a Behavior Container in the Behavior Editor workspace to open its context menu:
Behavior Container context menu
|Explore||Display the Behavior Container graph in current tab of the Behavior Editor workspace (also see alternative controls).|
|Open in new tab||Display the Behavior Container graph in a new tab of the Behavior Editor workspace (also see alternative controls).|
|Duplicate||Duplicate the Behavior Container (see Duplicate Behaviors and the glmDuplicateBehaviors command for more details)|
|Save||Save the Behavior Container as a Custom Behavior in the Behaviors Library (see save Custom Behavior for more details).|
|Enable/Disable||Process/skip the Behavior Container graph when running the simulation (see Behavior Editor controls for more details).|
|Unlink||Remove the Behavior Container from flow (e.g. delete its connections but keep it in current graph).|
|Remove||Remove the Behavior Container from its parent Behavior Container without deleting it (it is still available in Behavior Outliner).|