如何在 PIXI.js 中避免精灵中 alpha 透明区域的交互(点击等)

How to avoid interactivity (click etc.) on alpha transparent zones in sprites in PIXI.js

我加载了一个 hexagon.png,由于 alpha 值,它的未填充区域是透明的。当用户点击那个时,我希望他只能点击非透明区域,以避免在六边形对齐时矩形边框上发生重叠事件。是否有任何函数或 属性 能够做到这一点?

您可以设置精灵的命中区域。它可以是矩形、圆形或多边形。 对于 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。