Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Removed

An Agent Group handles a group of Agents and their behaviours.

  • Each Agent has a dependency graph responsible for building the pose of the agent at each frame and a variable set of custom data that we call Metadata. Metadata can be attached to almost every Atoms entity. Agents are just one of them. For a full list of metadatas, please check this section.
  • Users can assing Behaviour modules to each Agent Group to customize their simulation. During the simulation Behaviour modules will edit the Agents dependency graph or their metadata, this will make them behave differently. The modules are evaluated in order. By placing a "follow curve" curve module before an "agent  avoidance module", Atoms will evaluate the "follow curve" first.  For a full list of Behaviour modules and their parameters, please check this section.

    Add a behaviour module

    Maya

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

    Image Added

    Houdini

    From the Behaviour module list choose a module.Image Removed

    Image Added

    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

    a

    one or more layout

    module

    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.

    Warning

    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.

    Image Removed
    • 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

    Image Added

    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.

    Image Removed

    Some attributes can be edited

    Image Added

    Attributes can be randomized at the module level. By default Atoms will assign a single value, by pressing the Image Added 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 Image Modified 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

    form

     page for more information.


    Draw mode

    An agent group has 6 different

    type of draw modes

    display types.

    Skeleton

    In skeleton mode only the agent skeleton is drawn.

    Image Removed
    Image Added
    Mesh

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

    Image Removed
    Image Added
    Skin

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

    Image Removed
    Image Added
    Variation

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

    Image Removed
    Image Added
    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.

    Image Removed
    Image Added
    None

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

    MAYA ONLY

    Maya

    Image Removed

    Houdini

    Image Removed

    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).

    Image resolution: resolution used to convert maya texture to atoms images on module attributes that accepts a teture

    Maya

    Image Added

    Houdini

    Image Added


    Debugger

    Please check the Debugger page for more information.


    Draw metadata

    An agent group can also draw agent

    metadatas

    metadata. This is useful for debugging your simulation.

    Always remember to enable the Draw Metadata option before adding new

    metadatas

    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

    metadatas

    metadata is tool small, please tweak the draw scale and font size parameters.

    Note

    In Houdini the metadata list is not available. Please refer to the docs to see a list of default

    metadatas

    metadata ("Agent

    metadatas

    metadata" section) that you can display in the viewport.

    Maya

    Image Removed

    Houdini

    Image Removed

    Image Added

    Houdini

    Image Added

    Generating geometry (Houdini Only)

    From Atoms 6, it is now possible to generate Houdini geometry directly from the agent group.

    To do so, you can use the Atoms Agent Group Geometry Converter node. This node should be placed after the DOP import node.

    Its options include:

    • Mesh Mode: None, Skin or Variations

    • Mesh Filter: to filter out meshes

    • Material Prefix: to attach Houdini materials to the generated geometries

    Image Added