因为之前的游戏,需要使用图片切割的模块,顺便研究了一下这个功能如何实现,如果说错了什么,请大家指出。
最后在Mask源码里发现了惊喜。。。mask组件就是用Graphic实现遮罩的,而且其中的MaskType.ELLIPSE,挺适合魔改成多边形遮罩。。。
于是我就忍不住动手了。。。
思路大概是这样子,具体实现就看代码里,好几个月了,我也忘了当时怎么想的了。。。
源码奉上myMask.zip (2.3 KB)
如何使用:
var point = this.collider.points
var myMaskNode = this.node.getComponent(myMask)
if(myMaskNode){
}
else{
myMaskNode = this.node.addComponent(myMask)
}
myMaskNode._setMyData(point)//设置当前遮罩图形
myMaskNode._updateGraphics()//刷新遮罩
我现在是直接挂在多边形的刚体上,所以就直接遮罩了。。。反正大概就是这么用的
顺便付上我用这个写的一个小游戏。。。大家看情况帮我点点呗。。。
不点也没关系,反正做游戏都是给自己玩的。。。哈哈哈哈