1

我正在使用 cocos2d 1.0.1。

我创建了一个 CCSpriteBatchNode,它包括一个 CCSprite(我们将其命名为 parentLayer),其中包括一些 X 个子节点(CCSprites)。

问题是 - 当我旋转 parentLayer 时,所有精灵(子)都正确显示,但是边界框在同一个地方(旋转前它们所在的位置),所以这些精灵的世界坐标不会改变。

当然,如果没有 CCSpriteBatchNode,以上所有方法都可以很好地工作。但是,由于涉及的精灵数量,我想使用批处理节点。

问题是,有没有办法相应地更新边界框和子位置?

4

1 回答 1

0

我们在谈论多少个精灵?我只会使用快速枚举调用来单独旋转每个。我从来没有注意到这样做时性能受到影响,你呢?

CCArray *listOfChildren = [parentLayer children];
for (CCSprite *sprite in listOfChildren) {
    [sprite setRotation:someValue];
}
于 2012-11-08T08:41:34.310 回答