呼吸色块
7 / 15
📝 练习目标
使用 sin() 函数和时间变量实现周期变化的颜色呼吸动画。
💡 💡 教程内容
使用 sin() 函数和时间变量实现周期变化的颜色呼吸动画。
概览
- 按步骤完成练习。
学习目标
- 理解如何使用
sin()函数和u_time创建平滑的周期性变化。 - 学习将周期性变化的值映射到颜色通道。
- 掌握创建颜色随时间平滑过渡的动画效果。
- 了解如何调整
sin()函数的频率和振幅来改变动画的速度和范围。
前置知识
- time-animation
- solid-color
输入
float u_time— 时间(秒)。
关键概念
vUv是归一化 UV([0,1])。
vec2 uv = vUv;
- 用
u_time+sin/cos做动画。
float pulse = sin(u_time) * 0.5 + 0.5;
如何实现(步骤)
- 使用 sin(u_time) 生成亮度因子
- 构建动态 RGB 颜色值
- 输出 gl_FragColor
自检
- 是否能无错误编译?
- 输出是否符合目标?
- 关键数值是否在
[0,1]?
常见坑
- 如果画面全黑,检查遮罩/因子是否一直为 0。