Unity Shader - 曲线2


之前我收集了一部分曲线写法:CG cosh, exp, sinh, smoothstep, tanh, perlin_easeCurve1/2 曲线


0~1衰減曲线短尾1

今天在 合理参考 别的项目中的 shader代码中,看到有一些 shader 中的写法:

        (_u_xlat16_28.x = ((_u_xlat16_6.x * -5.5547299) + -6.98316));
        (_u_xlat16_6.x = (_u_xlat16_6.x * _u_xlat16_28.x));
        (_u_xlat16_6.x = exp2(_u_xlat16_6.x));

都是一个 衰减 曲线

短尾:其尾部衰减比较快速,且比较平滑

f(x)=x (-5.554729)-6.98316, f1(x)=x f(x), f2=2^(f1(x)) {0≤x≤1}

f(x)=2^((-5.5x-6.6)x)

f ( x ) = 2 ( − 5.5 x − 6.6 ) x f(x)=2^{(-5.5x-6.6)x} f(x)=2(5.5x6.6)x

在这里插入图片描述

在这里插入图片描述


制作变体曲线

利用这个式子,我可以构建出几种变体,便于我们使用

衰减1就是原始版本的
在这里插入图片描述

衰减2
在这里插入图片描述

递增1
在这里插入图片描述

递增2
在这里插入图片描述


总结

这个曲线相比之前 CG cosh, exp, sinh, smoothstep, tanh, perlin_easeCurve1/2 曲线 的其他曲线消耗小一些
而且非常适合 定义域值域 都在 : [0~1] 范围的曲线来使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值