viewportUV
viewportUV
提供一个与分辨率无关的标准化屏幕空间坐标系,范围从视口左下角的 (0,0) 到右上角的 (1,1)。
核心优势
确保渐变、UI布局或后期处理等效果在任何尺寸或宽高比的屏幕上都能保持其相对比例和位置,是所有屏幕空间效果的基石。
常见用途
为后期处理效果采样屏幕纹理时的默认坐标
作为创建程序化全屏渐变、图案或遮罩的基础
计算像素离屏幕中心的距离以制作晕影(Vignette)等效果
如何调整
它本身是只读的,但可通过对其输出的 vec2 坐标进行数学运算来调整效果。例如,使用 fract() 实现平铺,使用 step() 创建硬遮罩,或将其转换为极坐标以创造径向/旋转效果。
代码示例
1
2// 将 x 映射到红色通道, y 映射到绿色通道
3const color = vec3( viewportUV.x, viewportUV.y, 0.0 );
4