我正在as3中开发一个类似拼图的游戏,其中从Photoshop导入的不规则形状的图层用于遮盖其原始背景的一部分。
通过在遮罩及其内容上设置 cacheAsBitmap=true,结果是一个漂亮的不规则形状,其透明边界部分被省略了。
但是,仍然在MOUSE_DOWN处检测到不可见的边界区域。我希望鼠标不会在任何地方检测到,而是在可见的蒙版部分。目前,我无法在舞台上可能出现在重叠透明区域后面的任何其他剪辑上检测到鼠标。
我在这里看到了一个涉及位图像素检测的解决方案,但我还没有找到一种应用作为解决方案的方法。蒙版区域的内容要么是形状,要么是影片剪辑。
我希望有人能帮我找到解决方案
防止位图图形透明区域上的鼠标事件的最简单和最稳定的方法是创建一个单独的矢量形状作为鼠标的目标,并将位图的mouseEnabled
标志设置为 false 或hitArea
属性设置为此形状。
您可以在Flash IDE中手动创建此类形状,用于测试甚至生产。有时,编写位图跟踪脚本更适合通过检查像素透明度在运行时创建轮廓形状。