用 pow() 调整对比度
4 / 30
对渐变值使用 pow() 改变曲线,调整对比度。
渐变因子 t 默认是线性的,pow(t, n) 可以弯曲这条曲线,让渐变变快或变慢。
pow 怎么改变曲线
pow(t, n) 对 0~1 的值做指数运算:
n = 1.0:原样,线性渐变n = 2.0:开头慢,结尾快(更多深色)n = 0.5:开头快,结尾慢(更多亮色)
vUv.x 是线性的 0→1,pow(vUv.x, 2.0) 让同样的距离里,浅色部分更少,深色更多。
试着改一改
改变指数 n,感受曲线的变化:
| n | 效果 |
|---|---|
| 0.5 | 渐变偏亮 |
| 1.0 | 线性(默认) |
| 2.0 | 渐变偏暗 |
| 4.0 | 明暗对比更强 |
练习
练习代码里 t = 0.0(全黑)。用 pow(vUv.x, 2.0) 计算 t,看渐变曲线和线性有什么不同。
答案解析
pow(vUv.x, 2.0) = vUv.x * vUv.x,把线性 0→1 压成二次曲线。视觉上,渐变的起始段颜色变化很慢,接近 1 的地方变化很快。
把指数从 2.0 改成 0.5(等于 sqrt(vUv.x)),曲线反过来,起始变化快,结尾变化慢。