我加载了alpha.png,由于alpha值,其未填充区域是透明的。当用户单击该区域时,我希望他只能单击非透明区域,以免在六角形对齐在一起时矩形边界上发生重叠事件。是否有任何功能或特性可以做到这一点?

最佳答案

您可以设置Sprite的hitArea。它可以是矩形,圆形或多边形。
对于200 x 200的六角形Sprite,您可以执行以下操作:

var points = [50,0, 150,0, 200,100, 150,200, 50,200, 0,100];
sprite.hitArea = new PIXI.Polygon(points);


**请注意,这似乎在最新版本中已被打破。它可以在PIXI v3中使用,直到PIXI v4.0.3。

关于javascript - 如何避免在PIXI.js中的 Sprite 中的Alpha透明区域发生交互(单击等),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40139014/

10-11 13:49