Panneau Drivers (Pilotes)

../../_images/animation_drivers_drivers-panel_panel.png

Le menu déroulant Edit Driver .

Référence

Éditeur

Éditeur Graph

Mode

Drivers

Panneau

Sidebar region ‣ Drivers

Raccourci

N

Référence

Menu

Context menu ‣ Edit Driver

Raccourci

Ctrl-D

Ce panneau est visible dans la Sidebar de l” Éditeur Drivers ou en tant que menu déroulant lors de l’ajout d’un pilote à une propriété.

Il indique la propriété qui est pilotée, suivie d’une série de paramètres qui déterminent le fonctionnement du pilote.

Paramètres de Driver

Type

Voici deux catégories de pilotes :

  • Built-in functions (Average, Sum, Min and Max)

    La propriété pilotée aura la valeur de la moyenne, de la somme, de la valeur la plus basse ou de la plus haute (respectivement) des valeurs des Driver Variables référencées. S’il n’y a qu’une seule variable pilote, ces fonctions donneront le même résultat.

  • Custom (Scripted Expression).

    Une expression Python arbitraire qui peut se référer aux Driver Variables par le nom. Voir Expressions.

Driver Value

Le résultat actuel de la configuration du pilote. Utile pour le débogage.

Variables

See Driver Variables.

Update Dependencies

Ceci va forcer une mise à jour des dépendances de la Driver Value.

Show in Drivers Editor

Ouvre l” Éditeur Drivers pleinement fonctionnel. Ce bouton n’apparaît que dans la version popover du panneau Drivers.

Variables de pilote

Les variables sont des références aux propriétés, aux canaux de transformation ou au résultat d’une comparaison entre des transformations de deux objets.

Les pilotes doivent accéder aux données des objets via des Driver Variables, plutôt que par des références directes dans l’expression Python, afin que les dépendances soient correctement suivies.

../../_images/animation_drivers_drivers-panel_add-variable.png

Add, Copy, Paste buttons.

Add Input Variable

Ajoute une nouvelle variable de pilote.

Copy/Paste Variables

Copie la liste de variables actuelle afin de pouvoir la coller dans la liste de variables d’un autre pilote.

../../_images/animation_drivers_drivers-panel_single-property.png

Propriété unique.

../../_images/animation_drivers_drivers-panel_transform-channel2.png

Transform Channel.

../../_images/animation_drivers_drivers-panel_distance.png

Distance.

Name

Nom à utiliser pour les expressions de script. Le nom doit commencer par une lettre, et ne contenir que des lettres, des chiffres ou des tirets bas.

Variable Type

Le type de variable à utiliser.

Single Property

Retrieves the value of an RNA property, specified by a data-block reference and a path string.

Dans le cas des propriétés de transformation, cela rendra la valeur exacte de la propriété UI, tandis que Transform Channel prendra en compte le parentage et/ou les contraintes selon les besoins.

Voir aussi Propriétés personnalisées.

ID Type

Le type d’ID-Block. Par exemple : Key, Image, Object, Material.

ID

L’ID du type de l’ID-Block. Par exemple : « Material.001 ».

RNA Path

Le nom RNA de la propriété, basé sur un sous-ensemble de la syntaxe d’accès aux attributs Python. Par exemple : location.x ou location[0] pour la valeur brute de la localisation X, ou ["prop_name"] pour une propriété personnalisée.

Astuce

The easiest way to create a variable of this type is to use the Copy As New Driver context menu option of the input property, and paste the result into the driver via Paste Driver Variables.

Transform Channel

Récupère la valeur d’un canal Transform d’un objet ou os.

ID

ID de l’objet. Par exemple : Cube, Armature, Camera.

Bone

ID de l’os de l’armature. Par exemple : « Bone », « Bone.002 », « Arm.r ». Cette option concerne les armatures.

Type

Par exemple : Position X, Rotation X, Échelle X.

The Average Scale option retrieves the combined scale value, computed as the cubic root of the total change in volume. Unlike X/Y/Z Scale, this value can be negative if the object is flipped by negative scaling.

Mode (Rotation)

Pour les canaux de rotation, spécifie le type de données de rotation à utiliser, y compris les différents ordres d” Euler explicites. Par défaut, l’ordre d’Euler de la cible est utilisé. Voir Modes de canal de rotation.

Space

World Space, Transform Space, Local Space.

Rotational Difference

Fournit la valeur de la différence rotationnelle entre deux objets ou os, en radians.

Distance

Fournit la valeur de la distance entre deux objets ou os.

Value

Affiche la valeur de la variable.

Rotation Channel Modes

Rotation Transform Channels support a number of operation modes, including:

Auto Euler

Utilise l’ordre d” Euler de la cible pour décomposer la rotation en canaux.

XYZ Euler, …

Spécifie explicitement l’ordre de rotation d” Euler à utiliser.

Quaternion

Fournit la représentation Quaternion de la rotation.

Swing and X/Y/Z Twist

Décompose la rotation en deux parties : une rotation Swing qui vise l’axe spécifié dans sa direction finale, suivie d’une rotation Twist autour de cet axe. Ceci est souvent nécessaire pour piloter les Shape Keys et les os correctifs pour la rotation des articulations organiques.

Cette décomposition est souvent produite dans les rigs en utilisant un os auxiliaire avec la contrainte Damped Track pour extraire la partie swing, et son enfant avec Copy Transforms pour extraire la composante twist.

Les valeurs des canaux pour Swing et Y Twist sont :

../../_images/animation_drivers_drivers-panel_angle-curve.png

Falloff curves for weighted angles.

Y Rotation

Angle réel de la rotation twist.

W Rotation

Angle réel de la rotation swing, indépendamment de sa direction.

X Rotation, Z Rotation

Les angles pondérés qui représentent la quantité de swing autour de l’axe X/Z.

The magnitude of the angle equals W Rotation when the rotation is purely around that axis, and fades out to zero as the direction changes toward the other axis, following the falloff curves from the graph on the right.

Mathematically, the swing angles are computed from quaternion components, using \(2 \arccos(w)\) for W and \(2 \arcsin(x)\) etc. for the others. The component of the swing rotation that corresponds to the twist axis is always 0, and is replaced by the twist angle.

Expressions

Expression

Un champ de texte où vous pouvez entrer une expression Python arbitraire qui fait référence aux Driver Variables par leur nom.

L’expression a accès à un ensemble de constantes standard et de fonctions mathématiques de math, bl_math et d’autres modules, fournis dans le Driver Namespace. Pour un exemple d’ajout d’une fonction personnalisée à l’espace de noms, voir l” driver namespace example.

Pour des raisons de performance, il est préférable d’utiliser le sous-ensemble Simples Expressions autant que possible.

Use Self

Si cette option est activée, la variable self peut être utilisée pour que les pilotes référencent leurs propres données. Utile pour les objets, les os, pour éviter d’avoir à créer une variable Driver pointant vers elle-même.

Exemple : self.location.x appliqué à la propriété de rotation Y du même objet fera basculer l’objet lors de son déplacement.

Notez que les dépendances des propriétés accessibles via self peuvent ne pas être entièrement suivies.

Simple Expressions

Blender peut évaluer directement un sous-ensemble utile d’expressions de pilotes Python, ce qui améliore considérablement les performances, en particulier sur les systèmes multi-cores. Pour en tirer parti, l’expression du pilote doit uniquement utiliser les fonctionnalités suivantes :

Noms de variable

N’utilisez que des caractères ASCII.

Literals

Floating-point and decimal integer.

Globals

frame

Constants

pi, True, False

Operators

+, -, *, /, ==, !=, <, <=, >, >=, and, or, not, conditional operator/ ternary if

Standard Functions

min, max, radians, degrees, abs, fabs, floor, ceil, trunc, round, int, sin, cos, tan, asin, acos, atan, atan2, exp, log, sqrt, pow, fmod

Blender Provided Functions

lerp, clamp, smoothstep

Les expressions simples sont évaluées même lorsque l’exécution des scripts Python est désactivée.

Lorsqu’une expression en dehors de ce sous-ensemble est utilisée, Blender affiche un avertissement « Slow Python expression ». Cependant, tant que la majorité des pilotes utilisent des expressions simples, l’utilisation d’une expression complexe dans un petit nombre de pilotes est acceptable.