作用:使用材质裁剪矩形图片为圆形。
效果:左侧为原图,右侧为裁剪后的效果(上方为设置透明度,下方为discard)
实现思路:
因为要适应不同尺寸的图片,所以使用了椭圆的方程。
保证短方向撑满,长方向长度等于短方向。
因为glsl的v_vu0是0到1,所以将长方向缩短一定比例即可。
椭圆公式:
实现:
1:定义effect uniform变量(0.25的默认值是因为a,b分母是平方)
2:带入v_uv0的坐标到椭圆坐标里,如果大于1,则放弃绘制。
3:在js组件里获取mat并传入相应的值。(这之前涉及材质和effect的创建,自查)