简单矩形

24 / 30
学习使用条件判断绘制矩形,理解坐标范围和边界检测。

圆形用距离来判断边界,矩形用 x 和 y 范围来判断。两个方向的范围同时满足,就在矩形内。


用 step 判断范围

判断 vUv.x 是否在 0.2 到 0.8 之间:

  • step(0.2, vUv.x) = 1 当 vUv.x >= 0.2
  • step(vUv.x, 0.8) = 1 当 vUv.x <= 0.8
  • 两者相乘:只有 0.2 <= vUv.x <= 0.8 时才为 1

同样处理 y 方向,两者相乘得到矩形遮罩:


练习

练习代码里 x = 0.0y = 0.0(全黑)。用 step 构造两个方向的范围遮罩,让矩形区域(x: 0.20.8, y: 0.30.7)显示为白色。

答案解析

每个 step 是一个 0/1 的边界判断,两个方向各两个 step 相乘,形成四条边。四边都满足时 rect = 1(白色),否则 rect = 0(黑色)。

改变边界值可以移动矩形的位置和大小。试试 step(0.4, vUv.x) * step(vUv.x, 0.6) 让矩形变窄。

GLSL 代码编辑器

正确代码预览

当前代码预览