%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
  m_ObjectHideFlags: 0
  m_CorrespondingSourceObject: {fileID: 0}
  m_PrefabInstance: {fileID: 0}
  m_PrefabAsset: {fileID: 0}
  m_GameObject: {fileID: 0}
  m_Enabled: 1
  m_EditorHideFlags: 0
  m_Script: {fileID: 11500000, guid: fcf7219bab7fe46a1ad266029b2fee19, type: 3}
  m_Name: Readme
  m_EditorClassIdentifier: 
  icon: {fileID: 2800000, guid: a999ebd188c6842119197c7562792a72, type: 3}
  title: Animation Rigging Samples
  sections:
  - heading: Constraint Samples
    text: "This project contains simple samples of each constraint. The scenes can
      be found the Project > Unity > ConstraintSamples > Scenes folder. The following
      sections provide details on each scene. For a detailed explanation of each
      constraint, refer to the documentation links below, or the help icon on each
      constraint component. In these scenes, all constraints can be found in the
      hierarchy under the root > rig GameObject. To see the \u201Csource\u201D animations
      (without the rig/constraints), simply set the \u201Crig\u201D weight in the
      Rig Builder component to \u201C0\u201D (zero) and Preview the animation in
      the Animation window. To see the result of the rig/constraints, make sure the
      \u201Crig\u201D weight is set to \u201C1\u201D (one), then activate Preview
      in the Animation window or hit the Editor Play button for a runtime preview."
    linkText: Documentation
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/index.html
  - heading: 2BoneIK scene
    text: "This scene contains an example of a TwoBoneIK constraint setup. The TwoBoneIK
      constraint is used to animate two bones using IK. The rig in this sample uses
      two TwoBoneIK constraints with effectors & hints to animate the legs of a character.
      Hint effectors are optional and can ignored for a simplified setup. In this
      example, we decided to parent the hint effectors child of the IK effectors,
      but this is a user choice and can be done differently, depending on the animator\u2019s
      needs."
    linkText: twoBoneIK constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/TwoBoneIKConstraint.html
  - heading: Aim scene
    text: "This scene contains an example of the Aim constraint. The aim constraint
      is used to orient one GameObject to look-at or aim another GameObject/target.
      In this scene, we used two aim constraints; one for the head, and one for the
      gun. The head of the character always looks at the animated target while the
      shoulder gun activates itself, then aims the same animated target. The character
      controller has two layers; \u201CBase Layer\u201D & \u201Cgun\u201D layer.
      The Base Layer contains the idle & walk clips, while the gun layer contains
      the gunUp & gunFire clips. Since the animated \u201Ctarget\u201D GameObject
      has its own Animator, previewing the character animation clip in the Animation
      Window will have an active aim, but the target will be static. The Animator
      controller contains multiple clips, so make sure to select the desired clip
      (ex: gunUp) in the Animation Window pull-down list of clips when previewing.
      Hit the Editor Play button for a runtime preview of the entire sequence with
      the animated aim target."
    linkText: aim constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/MultiAimConstraint.html
  - heading: Blend scene
    text: "This scene contains a very simple example of the Blend constraint. The
      blend constraint can be used in manny ways, but basically blends two transforms
      based on weights, much like a mixer. In this example, Cube \u201CA\u201D is
      animated in Position Y. Cube \u201CB\u201D is animated in Rotation Y. Cube
      \u201CAB\u201D is constrained to 50% of cube A\u2019s position, and 50% of
      cube B\u2019s rotation. Cube \u201CAB\u201D therefore moves & rotates to half
      of the two source animations."
    linkText: blend constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/BlendConstraint.html
  - heading: ChainIK scene
    text: "This scene contains an example of the ChainIK constraint. The chainIK
      constraint is used to animate an IK chain with more than two bones. In this
      scene, we used the chainIK constraint to animate the scorpion\u2019s tail and
      attack move. Everything else is animated in FK (scorpion\u2019s arms, legs
      & target). Since the animated \u201Ctarget\u201D GameObject has its own Animator,
      previewing the scorpion\u2019s animation clip in the Animation Window will
      apply the chainIK constraint, but will not play the \u201Ctarget\u201D GameObject\u2019s
      animation (static target). Hit the Editor Play button for a runtime preview
      of both animations (scorpion & target GameObject)."
    linkText: chainIK constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/ChainIKConstraint.html
  - heading: Damp scene
    text: "This scene contains an example of the Damp constraint. The damp constraint
      is used to create a lag or delayed effect of one GameObject\u2019s position
      and/or rotation transform and apply it to another GameObject. In this scene,
      there are 8 cubes parented one after the other with a small position offset
      and size difference. There is one damp constraint for each cube, so 8 damp
      constraints each damping the next cube in the hierarchy. The \u201CMRoot\u201D
      GameObject is the only animated GameObject in this scene. All other cubes are
      animated through the damp constraints."
    linkText: damp constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/DampedTransform.html
  - heading: mParent scene
    text: "This scene contains an example of a Multi-Parent constraint. The mParent
      constraint simulates a hierarchal parent, without affecting the actually hierarchy.
      This is often referred to as a virtual parent. A given GameObject can have
      multiple parents, that can be weighted in or out as desired. In this scene,
      we used the mParent constraint for a character prop, in this case a sword.
      We used three sources (potential targets for the sword prop); ground, hand
      & back of the character. The source weights for the mParent constraint are
      animated through Animation Events in the animation clip, that call the MParent
      script on the \u201Croot\u201D GameObject. This means that the mParent constraint
      sources will not be animated during the Animation Window Preview of a clip.
      You can optionally change the source weight values manually to see the effect
      on the sword prop in the Animation Window Preview. You also have multiple clips
      in the Animator controller to choose from, use the clip pull-down list in the
      Animation Window to select the desired clip. Hit the Editor Play button for
      a runtime preview of the animation sequence with the animated mParent constraint."
    linkText: mParent constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/MultiParentConstraint.html
  - heading: mPosition scene
    text: "This scene contains an example of the Multi-Position constraint. The mPosition
      constraint allows you to constrain the position of one GameObject to another
      or multiple other GameObjects. In this example, we used this constraint to
      automatically manage the height of the hips of the character. The feet effectors
      animate the legs & feet, and the hips (hipsPivot GameObject) of the character
      is only animated in rotation. The mPosition constraint uses the two feet effectors
      as sources with a Y position offset for the hips. The result is a movement
      of the hips based on the feet position, lowering the hips of the character
      when they are far apart and moving the hips up as the feet get closer together.
      Note that in the \u201Crig\u201D hierarchy, the mPosition constraint (MPos)
      is evaluated before the twoBoneIK constraints (ik) in order to obtain the desired
      result."
    linkText: mPosition constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/MultiPositionConstraint.html
  - heading: mRef scene
    text: "This scene contains an example of the Multi-Referential constraint. The
      mReferential constraint allows you to create multiple pivots or anchor points
      for a given GameObject. A foot rig with ankle, heal, toe & toe tip pivots is
      a good example of this. In this scene, we\u2019ve created a simple example
      using a prop with multiple pivot points, in this case a sword. The first part
      of the animation is driven by the handgrip pivot (initial sword swing), the
      second part by the middle pivot (as the sword hits and rotates around the cylinder),
      and the last part by the sword tip pivot (as the sword lands and rotates around
      the sword\u2019s tip). The mReferential constraint changes the driving pivot/GameObject
      as the animation plays. Note that there is presently a limitation with \u201CPreview\u201D
      mode where offsets are not updated when changing the Driving GameObject, and
      will cause the GameObject to move. Offsets are updated as expected (GameObject
      does not move) when changing the Driving GameObject at runtime."
    linkText: mReferential constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/MultiReferentialConstraint.html
  - heading: mRotation scene
    text: "This scene contains an example of the Multi-Rotation constraint. The mRotation
      constraint allows you to constrain the rotation of one GameObject to another
      or multiple other GameObjects. In this scene, we used this constraint to distribute
      the head rotation to the neck & spine of the character. The Animator controller
      has two layers; \u201CBase Layer\u201D has an Idle clip, and \u201CLookAround\u201D
      layer has a LookAround clip. Only the head rotation is animated in the LookAround
      clip. The 3 mRotation constraints each take a different percentage of the head
      rotation, and applies it in a distributed manner down the spine of the character,
      giving him a more natural twist. Make sure to select the \u201CAnim_LookAround\u201D
      clip in the Animation window in order to preview this animation."
    linkText: mRotation constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/MultiRotationConstraint.html
  - heading: Override scene
    text: "This scene contains an example of the Override constraint. The override
      constraint is very special and can be used in many different ways. It can set
      a static local or global offset, as well as additive animation when using the
      \u201CPivot\u201D mode. Here, we animated a copy of the character\u2019s spine
      transforms and applied it as an additive offset to the existing walk animation.
      The controller uses two layers; the Base Layer for the walk animation, and
      the Offsets layer for the duplicate spine animation. The four override constraints
      additively mix the animation from the \u201Cwalk\u201D clip with the animation
      in the \u201CAnim_Offsets\u201D clip. The result is a mix of the walk animation,
      and the upper body offset animation (Anim_Offsets clip)."
    linkText: override constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/OverrideTransform.html
  - heading: TwistChain scene
    text: "This scene contains an example of the TwistChain constraint. The TwistChain
      constraint allows you to constrain the rotation of chain of GameObjects using
      root and tip effectors. This can be used for the spine or neck of a character,
      and even chained so that the spine tip effector is also the neck root effector.
      In this simple sample scene, we use the TwistChain to animate a chain of cubes.
      Only the root and tip effectors are animated. It\u2019s important to note that
      you can also modify the curvature of the resulting solve by changing the TwistChain\u2019s
      Curve property (linear by default). To edit this, click on the root > rig >
      TwistChain GameObject, click the Curve property of the TwistChain constraint,
      and select another curve preset (ex: ease-in)."
    linkText: twist chain constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/TwistChainConstraint.html
  - heading: TwistCorrection scene
    text: This scene contains a simplified example of the Twist Correction constraint.
      The twist correction constraint is used to distribute the roll of a rotation
      from one GameObject onto other GameObjects. This is most often used on bones
      of the arms & legs of a character to avoid the pinching effect of a deformed
      mesh when rotating the hands & feet for example. Although this sample scene
      does not use a deformed mesh, it demonstrates the twist distribution across
      multiple roll bones. In this scene, only the hand is animated. When the hand
      rotates, the twist bones roll to a defined percentage of the hand rotation
      (in this case 0.8 & 0.65).
    linkText: twist correction constraint
    url: https://docs.unity3d.com/Packages/com.unity.animation.rigging@1.2?preview=1&subfolder=/manual/constraints/TwistCorrection.html
  loadedLayout: 1
