我一直在努力寻找在SpriteKit for iOS 7中获得每像素碰撞的最有效方法(但是,针对iOS 8的SpriteKit支持此功能)。当然我想用一个方框或圆圈来表示精灵的物理身体,但不幸的是,游戏的本质要求每个像素碰撞。
我知道我可以在sprite周围手动绘制CGPaths,但我正在努力节省一些时间/创建一个长期使用的方法/学习新的东西。由于精灵的图像是在alpha背景(png文件)上绘制的,我想知道是否使用边缘检测或其他方法可以用CGPath跟踪非alpha边缘。这将在游戏初始化期间发生,并且CGPath将被转换为物理实体并被保存。我在网上找不到太多帮助,虽然我确实读过这可能非常棘手。
非常感谢任何帮助。谢谢!
答案 0 :(得分:0)
据我所知,你无法自动跟踪非alpha边缘,我使用tool将精灵拖放到一个框中,然后单击点来表示物理身体。然后,该工具返回您刚刚定义的路径的代码,在iOS 8退出之前,它会让事情变得更容易。