state - sets/sets the state of the puppet (Alive, Dead or Frozen). Frozen means the ragdoll will be deactivated once it comes to stop in dead state.
stateSettings - settings for killing and freezing the puppet. killDuration - how much does it take to weigh out muscle weight to deadMuscleWeight? deadMuscleWeight - the muscle weight mlp while the puppet is Dead. deadMuscleDamper - the muscle damper add while the puppet is Dead. maxFreezeSqrVelocity - the max square velocity of the ragdoll bones for freezing the puppet. freezePermanently - if true, PuppetMaster, all its behaviours and the ragdoll will be destroyed when the puppet is frozen. enableAngularLimitsOnKill - if true, will enable angular limits when killing the puppet. enableInternalCollisionsOnKill - if true, will enable internal collisions when killing the puppet.
mode - Active mode means all muscles are active and the character is physically simulated. Kinematic mode sets rigidbody.isKinematic to true for all the muscles and simply updates their position/rotation to match the target's. Disabled mode disables the ragdoll. Switching modes is done by simply changing this value, blending in/out will be handled automatically by the PuppetMaster.
blendTime - the time of blending when switching from Active to Kinematic/Disabled or from Kinematic/Disabled to Active. Switching from Kinematic to Disabled or vice versa will be done instantly.
fixTargetTransforms - if true, will fix the target character's Transforms to their default local positions and rotations in each update cycle to avoid drifting from additive reading-writing. Use this only if the target contains unanimated bones.
solverIterationCount - Rigidbody.solverIterationCount for the muscles of this Puppet.
visualizeTargetPose - if true, will draw the target's pose as green lines in the Scene view. This runs in the Editor only. If you wish to profile PuppetMaster, switch this off.
Master Weights
mappingWeight - the weight of mapping the animated character to the ragdoll pose.
pinWeight - the weight of pinning the muscles to the position of their animated targets using simple AddForce.
muscleWeight - the normalized strength of the muscles.
Joint and Muscle Settings
muscleSpring - the positionSpring of the ConfigurableJoints' Slerp Drive.
muscleDamper - the positionDamper of the ConfigurableJoints' Slerp Drive.
pinPow - adjusts the slope of the pinWeight curve. Has effect only while interpolating pinWeight from 0 to 1 and back.
pinDistanceFalloff - reduces pinning force the farther away the target is. Bigger value loosens the pinning, resulting in sloppier behaviour.
updateJointAnchors - when the target has animated bones between the muscle bones, the joint anchors need to be updated in every update cycle because the muscles' targets move relative to each other in position space. This gives much more accurate results, but is computationally expensive so consider leaving it off.
supportTranslationAnimation - enable this if any of the target's bones has translation animation.
angularLimits - should the joints use angular limits? If the PuppetMaster fails to match the target's pose, it might be because the joint limits are too stiff and do not allow for such motion. Uncheck this to see if the limits are clamping the range of your puppet's animation. Since the joints are actuated, most PuppetMaster simulations will not actually require using joint limits at all.
internalCollisions - should the muscles collide with each other? Consider leaving this off while the puppet is pinned for performance and better accuracy. Since the joints are actuated, most PuppetMaster simulations will not actually require internal collisions at all.
Individual Muscle Settings:
joint - the ConfigurableJoint used by this muscle.
target - the target Transform that this muscle tries to follow.
props - the main properties of the muscle. group - which body part does this muscle belong to? This might be used by some behaviours (BehaviourPuppet). mappingWeight - the weight (multiplier) of mapping this muscle's target to the muscle. pinWeight - the weight (multiplier) of pinning this muscle to its target's position using a simple AddForce command. muscleWeight - the muscle strength (multiplier). muscleDamper - multiplier of the positionDamper of the ConfigurableJoints' Slerp Drive. mapPosition - if true, will map the target to the world space position of the muscle. Normally this should be true for only the root muscle (the hips).