Contrainte Action

La contrainte Action est puissante. Elle vous permet de contrôler une Action en utilisant les transformations d’une autre objet.

The underlying idea of the Action constraint is very similar to the one behind the Drivers, except that the former uses a whole action (i.e. multiple F-curves of the same type), while the latter controls a single F-curve of their « owner »…

Notez que même si la contrainte accepte le type d’action Mesh, seuls les types Object, Pose et Constraint sont réellement fonctionnels, étant donné que les contraintes peuvent uniquement affecter les propriétés de transformation d’objets et d’os, et pas les formes des maillages. Notez aussi que seule la transformation d’objet (position, rotation, échelle) est affectée par l’action, si l’action contient des trames clés pour d’autres propriétés, elles sont ignorées, étant donné que les contraintes ne les influencent pas.

As an example, let us assume you have defined an Object action (it can be assigned to any object, or even no object at all), and have mapped it on your owner through an Action constraint, so that moving the target in the (0.0 to 2.0) range along its X axis maps the action content on the owner in the (0 to 100) frame range. This will mean that when the target’s X property is 0.0 the owner will be as if in frame 0 of the linked action; with the target’s X property at 1.0 the owner will be as if in frame 50 of the linked action, etc.

Options

Target

Identifiant de données (Data ID) utilisée pour sélectionner la cible de la contrainte, et n’est pas fonctionnelle (état rouge) quand elle n’en a aucune.

Bone

Quand la cible est un objet armature, utilisez ce champ pour sélectionner l’os cible.

Transform Channel

Ce sélecteur contrôle la propriété de transformation (position, rotation, échelle le long/autour d’un de ses axes) de la cible à utiliser comme « contrôleur d’action ».

Target Space

Cette contrainte vous permet de choisir dans quel espace évaluer les propriétés de transformation de sa cible.

To Action

Sélectionnez le nom de l’action que vous voulez utiliser.

Avertissement

Même s’il ne pourrait pas être dans un état rouge (problèmes de rafraîchissement de l’UI…), cette contrainte n’est évidemment pas fonctionnelle quand ce champ ne contient pas une action valide.

Object Action

Les os seulement, si l’option est activée, celle-ci va faire que l’os contraint utilise la partie « objet » de l’action liée, à la place de la partie « pose du même nom ». Ceci vous permet d’appliquer l’action d’un objet sur un os.

Target Range Min/Max

The lower and upper bounds of the driving transform property value.

Avertissement

Malheureusement, ici de nouveau nous retrouvons les limitations de la contrainte :

  • Quand une propriété de rotation est utilisée comme « contrôleur », ces valeurs sont « ramenées » à l’intervalle (-180.0 à 180.0).

  • Quand une propriété dimensionnement est utilisée comme « contrôleur », ces valeurs sont limitées à null ou à des valeurs positives.

Action Range Start/End

Les trames de début et de fin de l’action à faire correspondre.

Note

  • Ces valeurs doivent être strictement positives.

  • Par défaut, les deux valeurs sont mises à 0, ce qui désactive le mapping (càd que le propriétaire obtient simplement les propriétés définies à la trame 0 de l’action liée…).

Mix

Specifies how the keyframed transformation from the action is combined with the existing transformation.

Before Original

The action transformation is added before the existing transformation, as if it was applied to an imaginary parent of the constraint owner. Scale is handled like in the Aligned Inherit Scale mode of bones to avoid creating shear.

After Original

The action transformation is added after the existing transformation, as if it was applied locally to an imaginary child of the constraint owner. Scale is handled like in the Aligned Inherit Scale mode of bones to avoid creating shear.

After Original (Full Scale)

The action transformation is added after the existing transformation, as if it was applied locally to an imaginary child of the constraint owner with ordinary parenting. This mode can create shear and is thus not recommended for use.

Notes

  • When the object or bone already has Action constraints, the next constraint using a newly keyframed action should be added before all others in order to get the same final combined transformation. This fact is not affected by the Mix mode.

  • Contrairement à d’habitude, vous pouvez avoir une valeur Start supérieure à celle de End, ou celle de Min supérieure à celle de Max : ceci va inverser l’affectation de l’action (càd. elle sera « jouée » dans le sens contraire…), à moins que vous ayez les deux valeurs inversées, évidemment !

  • When using a Constraint action, it is the constraint channel’s names that are used to determine to which constraints of the owner apply the action. E.g. if you have a constraint channel named « trackto_empt1 », its keyed Influence and/or Head/Tail values (the only ones you can key) will be mapped to the ones of the owner’s constraint named « trackto_empt1 ».

  • Similarly, when using a Pose action (which is obviously only meaningful and working when constraining a bone!), it is the bone’s name that is used to determine which bone channel’s names from the action to use (e.g. if the constrained bone is named « arm », it will use and only use the action’s bone channel named « arm »…). Unfortunately, using a Pose action on a whole armature object (to affect all the keyed bones in the action at once) will not work…

  • Note also that you can use the pose library feature to create/edit a Pose action data-block… just remember that in this situation, there is one pose per frame!