Skip to main content

ValueGradientDriver 组件介绍

ValueGradientDriver 组件介绍

简介:Points(点)列表中的每个点都有一个 Position(位置)字段和 Value(值)字段。

ValueGradientDriver(值渐变驱动器)组件会根据 Points(点)列表中的项目及其相对于 Progress(进度)值的 Position(位置),来更改在 Target(目标)中定义字段的值。

字段说明

属性名称 类型 描述
Progress
(进度)
Float 控制将使用 Points 列表中的哪些项目来驱动 Target 的值。
Target
(目标)
FieldDrive<T> 此组件将要驱动其值的目标字段。
Interpolate
(插值)
Bool 控制该组件是否要在当前 Progress 值两侧最近的两个 Points(点)之间进行插值(或混合)。
Points
(点列表)
List<Point<T>> 一个项目的列表,其中指明了它们的 Position(相对于 Progress 的位置)以及相应的 Value(值)。

用法

Points 列表中的每个点都带有一个 Position(位置)字段和 Value(值)字段。Position 字段用于与该组件的 Progress 字段进行比较,而 Value 字段则是用来驱动 Target 目标字段的实际值。

当勾选了 Interpolate(插值)时,存储在 Target 中的值会在当前 Progress 两侧的两个点的 Value 之间进行线性插值运算。当取消勾选时,输出值仅仅会被设置为当前 Progress 之前距离最近的那个点的 Value。此规则唯一的例外是:当当前 Progress 之前没有任何点存在时,它将直接使用当前 Progress 之后的第一点的值。

如果出现两个点具有相同的 Position 的情况:如果未启用插值,或者这些位置完全等于当前的 Progress,则具有最大索引(index)的点将优先被使用;然而,在插值期间,则是具有最小索引的点拥有优先权。

示例