Unity Shader的Lerp()函数

lerp(a, b, w);
这里主要想说的是这个函数输入值w的区间

只要在搜索引擎中搜索“unity lerp函数”,查到的博客、资料都会跟你说w值只能是0~1之间的数,有的博客还会说如果你输入的w值超出了[0,1],就会被限制为0或者1。

所以我当时就很懵,因为在《Unity Shader入门精要》中输入的w值都超过了[0,1]这个区间

后来我发现,其实Unity Shader中的Lerp()函数是把ab之间的差值等分为了无数份,这是因为01之间能等分为多少份不可估量。这时就能根据w值在[0,1]中的什么位置,来定义Lerp()应该输出什么值。

当w<0时,输出的值就是 输入值a减去每一份的差值;当w>1时,输出的值就是 输入值b加上每一份的差值。也就是因为Lerp()函数有这个独特的性质,才能用来调整颜色的亮度、饱和度和对比度。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值