shapeCircle
shapeCircle
通过程序化方式直接在 GPU 上生成一个带有平滑边缘的完美圆形,无需使用任何纹理文件,从而节省内存并保证无限清晰度。
核心优势
由于是程序化生成的,它无需加载纹理文件,并且在任何缩放级别下都能保持完美锐利的边缘,不会像位图纹理那样产生模糊或像素化,同时还内置了抗锯齿功能。
常见用途
创建圆形遮罩,用于裁剪物体或混合纹理
作为高性能粒子系统的渲染形状,替代带纹理的四边形
程序化地生成 UI 元素(如按钮、指示灯)或物体表面的贴花
如何调整
通过对输入的 `coord` 节点(默认为 `uv()`)进行数学变换来调整。例如,`uv().mul(2)` 会缩小圆形,`uv().sub(vec2(...))` 会移动它,而 `uv().mul(N).fract()` 则可以创建 N x N 的平铺效果。
代码示例
1// 创建一个节点材质并使其透明
2const circleMaterial = new MeshStandardNodeMaterial();
3circleMaterial.transparent = true;
4
5// 将 shapeCircle 的输出(一个 0-1 的遮罩)连接到材质的 alpha 通道
6circleMaterial.alphaNode = shapeCircle();