极坐标渐变(角度)
27 / 30
📝 练习目标
将 UV 转换为极坐标角度,并映射到 0-1 渐变。
💡 💡 教程内容
将 UV 转换为极坐标角度,并映射到 0-1 渐变。
概览
- 用极角作为渐变因子。
学习目标
- 使用 atan(y,x) 得到角度
- 把角度归一化到 0-1
前置知识
- uv-coordinates
关键概念
- 角度来自
atan(y, x)。
float a = atan(p.y, p.x);
- 把角度归一化到
[0,1]并作为插值因子。
float t = (a + PI) / (2.0 * PI);
如何实现(步骤)
- 居中坐标:
p = vUv - 0.5。 - 角度:
a = atan(p.y, p.x)。 - 归一化:
t = (a + PI) / (2*PI)。 - 用
t混合颜色。
自检
- 是否能无错误编译?
- 输出是否符合目标?
- 关键数值是否在
[0,1]?
常见坑
- 必要时把
t用 clamp 限制到[0,1]。