仅作个人学习记录用,参考的好像是在Cocos论坛还是在哪的文章忘了所以无链接,js实现的
节点关系
node01是个sprite,挂载EraserCtrl脚本,Cr为擦除半径,Mask为MaskNode节点
MaskNode挂载Mask组件,勾上反向遮罩
node02是个sprite
cc.Class({
extends: cc.Component,
properties: {
cr: {
default: 30,
tooltip: '涂抹圆的半径'
},
mask: cc.Mask
},
// LIFE-CYCLE CALLBACKS:
// onLoad () {},
start() {
let self = this;
this.node.on(cc.Node.EventType.TOUCH_START, (event) => {
cc.log('touch start');
let point = event.touch.getLocation();
point = self.mask.node.convertToNodeSpaceAR(point);
self._addCircle(point);
}, this);
this.node.on(cc.Node.EventType.TOUCH_MOVE, (event) => {
let point = event.touch.getLocation();
point = self.mask.