【发布时间】:2012-09-08 19:33:44
【问题描述】:
我是 Cocos2d 的初学者。我有一个精灵,我想忽略对该精灵透明区域的触摸。
我知道这个答案Cocos2d 2.0 - Ignoring touches to transparent areas of layers/sprites,还有这篇很棒的文章http://www.learn-cocos2d.com/2011/12/fast-pixelperfect-collision-detection-cocos2d-code-1of2/。
我能够使其与 KKPixelMaskSprite 一起使用,但仅当从文件中使用 sprite 而不是从批处理节点使用时。每当我使用批处理节点(Sprite 表)来获取 sprite 时,它就会停止工作。
我有不同的精灵,我想用这种方式检测 -> 如果触摸在当前的精灵边界框中,那部分在精灵上是否透明?
P.S.我正在使用 cocos2d 1.0。我现在不想使用任何物理引擎,我只想忽略对精灵透明区域的触摸(使用批处理节点创建)。我该怎么做?或者是否有任何工具可以提供帮助?
非常感谢。
【问题讨论】:
-
我认为你提到的链接是完美的解决方案。stackoverflow.com/questions/10889170/…
-
@user739711 我试过了,它只适用于单个 Sprite,不适用于 Batch 节点。
标签: objective-c cocos2d-iphone