Agent group (AtomsMaya/AtomsHoudini)

Add a behaviour module

Maya

From the Behaviour module list press the "Add button" and select a module.

Houdini

From the Behaviour module list choose a module.

It is possible to disable a module without removing it from the list using the checkbox next to the module name. You can remove or move a module up or down in the list using the 3 buttons at the bottom.

The first module in the module stack must be one or more layout modules ("gridLayout","pointsLayout","cacheReader",etc...). These modules create agents inside the agent group during the simulation.
From Atoms 3.6.0, you can have more than one layout module applied to your agent group with few exceptions:

  • the points layout must always be the first in the stack
  • the cache reader and sync modules cannot be used in conjunction with other layout modules

Each layout module which does not fall in the previous exceptions has a "groupIdOffset" parameter that needs to be edited by the user in order to prevent clashing of agent group ids. It is good practice to provide a "groupIdOffset" before starting to layout your agents. If you realize that you need to increase this value at a later stage, you can use the Group Id Offset tool.

After a layout module, you would usually add an animation module ("clipReader", "stateMachine", etc...) which add animation to the agents by creating the network of nodes to run animation clips inside the agent dg network. At this point, you can add other modules to drive the agents or set metadata.

The Maya Atoms Group UI offers a search box and nested menus for fast module searches.
In Maya, you can also drag and drop objects such as meshes and curves onto the behaviour list, and a dialog will pop up prompting all the modules that accept at least one of those objects as input. If you drag multiple objects of the same type, and select a module that accepts only one of those objects as input, you will create a new module for each object (i.e. dropping 3 curves and selecting "followCurve" will create three followCurve modules with one of the curves as input).

After adding a module to the stack, you can rename it to your liking.


HOUDINI ONLY: please make sure to use only the right side buttons for moving, deleting or disabling a module. Never use the buttons on the left side.




Edit Behaviour module attributes

Maya

After selecting a module from the Behaviour module list, you can edit its metadatas from the "Behaviour Module Options" panel. The metadatas are converted to standard Maya attributes and the UI is just a user friendly representation. All attribute can be found inside the "Extra Attributes" section of the Attribute Editor.

  • You can animate the attributes from the UI or use standard Maya tools.
  • You can also connect Maya attributes with module metadatas by dragging attributes from the Outliner on the metadata fields of Behaviour Module Options panel.
  • For numerical attributes, you can CTRL+click and drag to edit the value.
  • Right clicking on the list will show a menu containing the following actions: Copy/Paste Modules (these can be copied between different agent groups), Enable, Disable, Delete

Houdini

After selecting a module from the "Modules Attribute" tab, tab you can edit its metadatas. The metadatas are converted to standard Houdini parameters so they can be animated and connected.

Attributes can be randomized at the module level. By default Atoms will assign a single value, by pressing the  button you will be able to switch to range random mode (you will provide a min and a max value) and list random mode (you will provide a list of values to be used). 

Attributes can also be overridden per agent with the "Agent Override dialog". You can open the dialog using the  button on the right side of the attributes.
Overrides assigned with the "Agent Override dialog" always have the priority over the values assigned by the module with the single value and random modes.

Please check the Agent override dialog page for more information.




Draw mode

An agent group has 6 different display types.


Skeleton

In skeleton mode only the agent skeleton is drawn.

Mesh

In mesh mode the low geo stored inside the Agent type is used.

Skin

In skin mode the skin geo stored inside the Agent type is used.

Variation

In variation mode the "variation" metadata value is used to draw the correct variation meshes using the variation json table.

Lod

The "lod" metadata is used to look up the variation json table, if no lod is found the "variation" is used as a fall back.

None

No mesh or skeleton is drawn, but the agents are still simulated.


MAYA ONLY

Draw Agent Position: if on, a point is going to be drawn to show the agent position.

Use Color Metadata: If on and the agent has a "color" metadata, the "color" value is used for the viewport display.

Use Compute Shader: activate LOD and Frustum culling on this agent group (viewport only).

Maya

Houdini



Debugger

Please check the Debugger page for more information.



Draw metadata

An agent group can also draw agent metadata. This is useful for debugging your simulation.

Always remember to enable the Draw Metadata option before adding new metadata.

Once you have added metadata you can decide its display mode:

  • Text, just displays the metadata value as text
  • Vector mode, if the metadata is a vector (i.e. direction) it will draw a vector using the agent as origin
  • Circle mode, if a metadata type is vector it will use the length of the vector as the circle radius, if it's double then the value of the metadata itself is going to be used as the circle radius

If you find that the graphical representation of the metadata is tool small, please tweak the draw scale and font size parameters.

In Houdini the metadata list is not available. Please refer to the docs to see a list of default metadata ("Agent metadata" section) that you can display in the viewport.

Maya

Houdini

Copyright © 2017, Toolchefs LTD.