193 lines
14 KiB
Plaintext
193 lines
14 KiB
Plaintext
%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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?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.0?preview=1&subfolder=/manual/constraints/TwistCorrection.html
|
|
loadedLayout: 1
|