Behaviors: Physical simulations

Magnets: Dynamic attachment of objects

This behavior lets different parts of a puppet or different puppets connect to each other as they get close. Use it for picking up and dropping objects, like a cup of coffee that you want your character to grab.


  1. Add the Magnets behavior to each puppet that you want to be connectable, and make sure the Physics behavior is at the same level or higher in the puppet structure.

  2. Apply the Magnet tag (in the Physics tag category) to the handles that can attach to each other.

  3. Apply the Dynamic tag (in the Physics tag category) to the group that will be attached to.



Connections can be broken when one of the layers that have the Magnets handle is untriggered or hidden. Connections can also be broken when the strength goes to 0.

Attach Style

Controls how connected objects are oriented with each other ‐ Weld retains the original orientation at the time the attachment was made, whereas Hinge allows the attached object to pivot. If you are using multiple Magnets behaviors (for example, you're connecting between puppets), and they use different attach styles, the connection to be used is Hinge.


Controls how strong the connection is between attached objects, with lower values allowing the objects to move more freely than at higher values. A strength of 0 will not attract other Magnet-tagged handles, and also breaks any current connections.


Controls the maximum distance (in pixels) that nearby Magnet-tagged handles need to be from each other to form a connection.

Overlap Collidables

controls if Collide-tagged groups containing Magnet-tagged handles can overlap but still collide with other groups that are not magnetized (checked), or always collide (unchecked). When unchecked, the groups will collide when their outlines meet. The Range value might need to be increased because the handles will not overlap before making a connection.

Magnets behavior

Watch this tutorial to know when, how, and why use this behavior.

Motion Lines: Draw lines behind a fast-moving object to accentuate its movement

This behavior draws lines along the motion path of and behind an object to convey fast movement. Also known as speed lines, they can accentuate how parts of a puppet move over time and can add flourish to an animation. You can define any number of motion lines, with each optionally having a pair of secondary lines.


  1. Add the Motion Lines behavior to the puppet. 
  2. Add the Motion Lines handle tag (from the Modifiers tag category) to any number of handles that you want the motion lines to be drawn from. These handle locations can move either directly (by dragging them if they also have the Draggable handle tag) or indirectly (as part of a mesh that is controlled by another behavior).


As the puppet moves, handles tagged with Motion Lines will have lines drawn from them based on their speed. The behavior has the following parameters:

  • Velocity Threshold: controls the speed that the handles tagged with Motion Lines needs to exceed before a motion line appears from the handles. 
  • Line Lifespan: controls the duration that the motion lines stay visible. 
  • Line Width: controls the thickness of the primary motion line that's drawn from each tagged handle. The width of the secondary motion lines is a percentage of the primary line's width.
  •  Secondary Lines: shows a pair of smaller lines along each primary motion line to accentuate its movement. The location and length of the secondary lines are randomized for a more visually compelling look.
  • Secondary Line Offset: controls the distance of the secondary lines from each primary motion line. 
  • Color (R), (G), and (B): controls the red, green, and blue color components of the motion lines, each component a percentage. 
  • Opacity: controls the visibility of the motion lines. 
  • Fade Opacity: controls making the tails of the lines lighter. It is enabled by default.
  • Tapered Lines: gradually reduces the thickness of motion lines in addition to fading them.

Particles: Control objects using physics

Particles behavior creates multiple instances of a puppet and treats them as particles within a simulation (for example, spewing as if fired from a cannon, or falling like snowflakes). This behavior isn't applied by default to puppets. Add it first to see its effect on a puppet. You can also apply it to a group of puppets to have the group emitted as particles from the parent puppet.

The Physics behavior must be applied at or above the group that has Particles behavior applied. This allows Particles to use the settings for the physics system, and particles to move. If you are opening an older project, or a puppet with only Particles behavior applied, add the Physics behavior to use the settings.


Particles applied to a group render above all groups of a puppet. See Snowflakes.psd in the Character Animator Examples download for a working example that you can modify.


  • Particle Mode controls the type of particle motion to generate — Snow makes particles fall from the top of the scene, Point and Shoot fires particles from the puppet's position toward the clicked location, and Cannon fires particles in a specific direction.

This behavior has the following parameters:


For the Snow mode, you might want to set Emitter Opacity to 0% or position the puppet off the edge of the scene (via the Transform behavior) so all you see are the falling particles.

Lip Sync preferences window

  • Mouse & Touch Input controls whether the behavior processess mouse actions such as clicks and drags.
  • Keyboard Input controls whether the behavior processess keyboard presses.
  • Continuous Mode (for Point and Shoot and Cannon particle modes) controls if particles fire automatically, without clicking the mouse.
  • Track mouse mode emits particles from the motion path traced by the mouse pointer location or finger location on a touchscreen, and in the direction of movement. 
  • Flicker Particle Opacity causes the emitted particles to get brighter and darker over time like flickering fireflies at night. Tip: Set the Physics behavior's Gravity Strength to 0% to simulate floating particles that float near the dragged motion path.

In Point and Shoot mode, the pointer must be above the Scene panel for particles to fire.

  • Particles Per Second controls the birth rate.
  • Direction (for Cannon mode) controls the angle that particles fire from the center of the puppet.
  • Velocity controls the rate of fire.
  • Spread controls the width of the area from which particles are birthed. For Snow mode, if you want particles to fall across the full width of the scene, set this value to 100%.
  • Randomness controls the variability in direction that particles fire. Use in combination with Spread for different looks.
  • Lifespan controls particle duration (in seconds), from birth to death.
  • Honor Emitter Transforms controls whether emitted particles are affected by the scale, skew, and rotation of the emitter (for example, water droplets that spray from an elephant's trunk). When unchecked, emitted particles are upright but is still affected by the emitter's position and the Particle Scale parameter.
  • Particle Scale controls the size of emitted particles, relative to the normal size of the puppet.
  • Emitter Opacity controls the visibility of the original puppet from which particles are emitted. Set to 0% so that all you see are the emitted particles. The Transform behavior's Opacity can additionally affect emitter opacity.
  • Particle Opacity controls the visibility of emitted particles.
  • Fade Particle Opacity controls whether the visibility of emitted particles reduces over their lifespan.

Note: Unless you want particles to move along an arc, set Direction (of emitted particles) and Gravity Direction in asimilar orientation. 

Gravity Strength, gravity Direction, Bounce Off Scene Sides, Bounciness, Wind Strength, and Drag parameters are now a part of Physics parameters. Squash and Strech parameter is no longer available.

Collidable particles

The Particles behavior can emit particles that are collidable  with other particles or other layers tagged

Remove all existing particles in a scene

Select the puppet with particles and have it armed for record. Then Press D.

Particles collide in a project
Particles collide in a project

  1. In the Particles behavior, enable the Collide option.

  2. In the Physics behavior that controls the physics system, adjust the general gravity and wind settings, as well as the settings in the Collide section.

Physics: Simulate object movement and deformations

Physics allows layers in a puppet to collide and bounce against each other and the sides of the scene. For example, a character can walk through a pile of leaves, with the feet pushing them out of the way. You can even have a structure of nested groups act as a chain or produce ragdoll animation.  You can even have a structure of nested groups act as a chain or produce ragdoll animation. This behavior lets a puppet warp (hang and sway) as if it was pulled and pushed from some point on it. Handles on the puppet act as particles that get dynamically simulated, causing the artwork on them to move and deform. For example, the long hair, earrings, or wings on a character that sway or oscillate like a spring as the character moves around the scene.Note: Collisions occur only between independent groups of a single puppet, and between puppets that are in the same scene.

You can apply Physics at multiple group levels for finer control of stiffness, wind, and gravity settings. 

Note: The Physics tag is ignored if you apply it to a puppet's origin handle, either manually in the Puppet panel or if the artwork had a layer with "dangle" in its name.

Note: Collisions occur only between independent groups of a single puppet, and between puppets that are in the same scene.

The existing Dangle settings for the Physics behavior has been enhanced with support for squash and stretch deformation, which preserves the overall volume (surface area) of a puppet as it deforms. For example, compressing the puppet's mesh causes the sides to bulge wider to retain the original surface area. Similarly, stretching the mesh vertically causes the middle to get narrower.

Also, when using lower stiffness settings that cause looser swaying motion, you can reduce the amount of sway with damping control.


Assign the Physics tag to the handles that you want to control by physics. The puppet dangles from the other handles, such as Origin or the ones with the Fixed tag. If the imported artwork has a guide with the word "Dangle" in its name, the handles created from those guides get the Physics tag automatically. Layers with the word "Dangle" get the Physics tag applied to their origin handles. However, the Physics tag applied to any origin handle is ignored. 


The Dangle tool in the Puppet panel can create Dangle-tagged handles without needing to modify the original artwork file.

Make sure that some parent puppets can be controlled by the Dragger, Face, or Transform behavior so that the dangling puppets can react to the motion.

Tip: Use Hinge attach style to allow the puppet to pivot smoothly around the attachment point.

Dangling still uses Dangle-tagged handles and the Dangle tool, but to operate collisions, tag the
layers as either Collide or Dynamic. These handle and layer tags are in the Tags > Physics section of the Properties panel.

Follow these steps to make an independent group dangle:

  1. Add one or more handles tagged as Dangle to the group. 
  2. Reposition the group's origin to where the dangling movement should be anchored.
  • To make independent groups collide or move around the scene, apply the Collide layer tag if you want the group to be  collidable  with other Collide-tagged layers. The layer does not move unless you also use the Dynamic layer tag, but allows other  collidable  objects to bounce off it.
  • Apply the Dynamic layer tag if you want the group to move around in the simulation. You might want to also apply the Collide tag so that the dynamic layer doesn't ignore other layers that you want it to bounce off of.
  • When you tag a layer as Dynamic, the following actions will also occur so that you can see your layer move without requiring additional setup: 
    • The Collide tag will also be applied. You can, of course, untag Collide, if you did not need collisions.
    • If a layer is selected, its containing group will be made independent. If a group is selected, it will be made independent, if needed.
    • The containing or selected group, if previously set to a Weld attach style, will be changed to Free so that the layer can move.

If the Collide or Dynamic tag is applied to a layer or non-independent group, it uses the mesh associated with the nearest parent-independent group in the puppet structure. Also, when setting up a hierarchy of groups for ragdoll movement, change the Attach Style for the groups to Hinge to make each group pivot as expected. When the Dynamic tag is assigned to a group that contains Dangle handles, the group will not move rigidly but can still dangle.


Make a puppet's identified regions dangle

Move the puppet on which the dangled artwork is attached. For example, move your face (if the Face behavior is controlling the puppet) or drag in the Scene panel (if the Dragger behavior is controlling the puppet).

This behavior has the following parameters:

The Physics behavior has gravity controls that affect both dangling groups and colliding layers, and parameters specific to dangling and colliding actions. You can control them using the following parameters:

Gravity Strength: controls the amount of force or pull of gravity.

Gravity Direction : controls the orientation of gravity. For example, you can rotate gravity 180° to point upward, and either increase Gravity Strength or match Wind Direction to the same orientation to have dangled hair float upward.

Bounce Off Scene Sides controls if emitted particles bounce when hitting any side of the scene.

Bounciness controls how much particles bounce. If lowered to 0% and Bounce Off Scene Sides is checked, they'll slide along the edges.

Wind Strength controls the influence of the simulated wind on the Dangle handles.

Wind Variation controls the randomness of wind direction and strength. Increase this value to make the wind feel more alive.


  • Spring Stiffness: controls the rigidity of the regions controlled by the Dangle handles. You can set the Spring Stiffness value up to 200%. Some puppets require lowering the default value (for example, down to 20%) to get more elasticity.
  • Wind Strength: controls the influence of the simulated wind on the Dangle handles. 
  • Wind Direction: controls the orientation of the wind, pushing Dangle-tagged handles in this direction
  • Wind Variation: controls the randomness of wind direction and strength. Increase this value to make the wind feel more alive.


  • Start: controls when the collision simulation begins, either When Triggered by a parent group that has a trigger is run, or Immediately upon the start time for the puppet in the scene. Tip: If you want a simulation to settle before showing it (for example, a pile of leaves settling on the ground before being pushed away by another object), set Start to When Triggered, and then press the trigger key when you want to see the settled animation. 
  • Shape: controls how precise collisions should be. Fast approximates the shape of layers to be either a rectangle or circle (so detailed layers might not appear to touch when colliding ), but is faster to process the simulation. Contour uses the outline of the layer for more accurate collisions, but can take longer to process the simulation. 
  • Weight : controls the density of layers that collide with each other. 
  • Friction: controls how much colliding layers decelerate when sliding against each other. 
  • Bounciness: controls how much colliding layers bounce off each other. 
  • Bounce Off Scene Sides: controls whether colliding layers can bounce off the edges of the scene.
  • Return Strength: controls how fast layers that are dynamic layers returns to their original position after being pushed away by another colliding layer. Set to 0 or low values to prevent or slow them from returning.

Dangle: Squash and Stretch deformation, Damping control

The Dangle behavior supports squash and stretch deformation, which preserves the overall volume (surface area) of a puppet as it deforms. For example, compressing the puppet's mesh causes the sides to bulge wider to retain the original surface area. Similarly, stretching the mesh vertically causes the middle to get narrower.

Also, when using lower stiffness settings that cause looser swaying motion, you can reduce the amount of sway with damping control. 


Apply the Dangle tag to at least one handle in the mesh.


  • Squashiness controls how much to preserve the original surface area of the puppet. Set to 0% for deformation matching Dangle results in earlier versions.
  • Damping controls how much the mesh sways, especially when Stiffness is at lower values when it normally produces looser movement.
Adobe 標誌