docs.unity3d.com
    显示 / 隐藏目录

    Smoothstep 节点

    描述

    如果输入 In 的值位于输入 Edge1 和 Edge2 的值之间,返回 0 和 1 之间的平滑埃尔米特插值结果。如果输入 In 的值小于输入 Step1 的值,返回 0;如果大于输入 Step2 的值,返回 1。

    此节点类似于 Lerp 节点,但存在两个显著差异。首先,使用此节点时,由用户指定范围,返回值介于 0 和 1 之间。这可视为与 Lerp 节点相反。其次,此节点采用平滑埃尔米特插值,而不是线性插值。这意味着插值从开始后将逐渐加快速度,并在接近结束时减慢速度。这对于创建自然的动画、淡入淡出和其他过渡非常有用。

    端口

    名称 方向 类型 描述
    Edge1 输入 动态矢量 最小步长值
    Edge2 输入 动态矢量 最大步长值
    In 输入 动态矢量 输入值
    Out 输出 动态矢量 输出值

    生成的代码示例

    以下示例代码表示此节点的一种可能结果。

    void Unity_Smoothstep_float4(float4 Edge1, float4 Edge2, float4 In, out float4 Out)
    {
        Out = smoothstep(Step1, Step2, In);
    }
    
    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)