简介

驱动器通过函数来控制属性值。

事实上,驱动器由以下部分组成:

  • 驱动器配置,指定0个,1个或多个使用其他属性或物体变换通道的输入值,并使用预定义的数学函数或自定义的Python表达式将其结合在一起。

  • 动画 函数曲线,将驱动配置的输出映射到最终值,以应用到被驱动属性。

例如,物体1的旋转可以被物体2的位置控制。可以说,物体2的位置驱动物体1旋转。

驱动器不仅可以调用大多数属性值,直接映射到其他属性,而且属性也可以作为数学表达式或者Python脚本的一部分,通过函数进一步调整。

驱动器是构建装备的极其强大的工具,通常用于驱动骨骼变换以及形状键,操作约束和影响修改器,通常使用自定义属性作为输入。

曲线视图

../../_images/animation_drivers_introduction_fcurve.png

曲线编辑器中的驱动器范例。

如图 驱动器编辑器 的主界面,以及 函数曲线

如图 X轴 映射驱动器的控制变量。单位取决于驱动器。

Y轴 是被驱动的属性值。单位取决于物体属性。

在示例图中,如果控制变量为2.0,则被赋予的属性值为0.5。

The default F-Curve is an identity map, i.e. the value produced by the driver configuration is applied to the driven property unchanged. If the driver output value is 2.0, the property will be 2.0.

The driver function can be defined artistically with Bézier curve handles or mathematically with trigonometric functions or polynomial expressions such as \(y = a + bx\). Furthermore, the function can also be procedurally modulated with noise or cyclic repetitions. See Modifiers for more details.

驱动器配置

驱动器面板 中配置驱动器。

驱动器可以有零个,一个或多个 变量 。变量是两个物体之间的属性或者距离值。

驱动器 类型 决定变量的使用方式。类型可以可以是:

  • 内置函数:例如,变量值的总和

  • 脚本表达式:可以使用任何现有变量,通过自定义数学表达式或Python表达式控制。

驱动器输出单个值,该值在变量发生变化时变化,变量在驱动器中进行函数计算,得出被驱动的属性值。

关于脚本表达式的注释

当驱动器使用简单表达式时,Blender 可以将其转化为内部表达式(如果它足够简单)。这意味着,即使是在复杂的场景中,使用人员也能通过简单的操作,添加其它”简单“表达式快速计算。内置函数始终以内置方式快速计算。

简单表达式完整列表详见, 简单表达式

当表达式不简单时,可以用Python进行计算。因此,如果不知道Python代码的作者,则驱动器将更慢且有安全风险。这在应用于复杂场景或与他人共享文件时,要格外注意。见 自动运行