clippingNode 裁剪

let stencil = new cc.Sprite(fileName);

let clippingNode = new cc.ClippingNode();
this.addChild(clippingNode);
clippingNode.setStencil(stencil);
clippingNode.setAlphaThreshold(0);//不加 默认为1 裁剪出来是矩形
clippingNode.setPosition(VisibleSize.width/2,VisibleSize.height/2);

let display = new cc.Sprite(fileName);
clippingNode.addChild(display);

将display按照stencil的形状显示出来。

(遇到了给遮罩Sprite,加扫光的情况。效果是遮罩不显示,在遮罩区域显示扫光的情况。做法是以遮罩作为clippingNode的stencil,然后将扫光作为clippingNode的child,设置AlphaThreshold为0,然后扫光就只能在遮罩区域显示。)
posted @ 2019-08-14 17:52  流星曳尾  阅读(187)  评论(0编辑  收藏  举报