Smoothstep
菜单路径:Operator > Math > Arithmetic > Smoothstep
Smoothstep 运算符计算两个边界值之间的值的线性插值,并在限制处进行平滑处理。
此运算符返回一个介于 X 和 Y 之间的值。此值在 X 和 Y 之间具体位置取决于 S 的值:
- 如果 S 小于 1,则结果为 Y。
如果 S 小于 0,则结果为 X。
如果 S 介于 0 和 1 之间,则结果为 X 和 Y 之间的平滑过渡。
- 结果 = (Y - X) * ( 3S2 - 2S3 ) + X
此运算符接受各种类型的输入值。有关此运算符可以使用的类型的列表,请参阅可用类型。其中,X 和 Y 输入始终是同一类型。S 更改为与 X 和 Y 相同的类型。
运算符属性
输入 | 类型 | 描述 |
---|---|---|
X | Configurable | 要从中进行插值的值。 |
Y | Configurable | 要插入的值。 |
S | Configurable | 插值的值。float 类型或与 X 类型相同的输入。 |
输出 | 类型 | 描述 |
---|---|---|
Out | 输出端口 | X 和 Y 之间 S 的线性插值,在限制处进行平滑处理。 Type 会更改以匹配 X 和 Y 的类型。 |
运算符配置
要查看 Smoothstep 运算符的配置,请单击该运算符标题上的齿轮图标。X 和 Y 必须是可用类型中的同一类型。如果 S 是矢量类型,Unity 将按值计算插值。
可用类型
您可以将以下类型用于输入端口:
- float
- Vector
- Vector2
- Vector3
- Vector4
- Position
- Direction