ccSpriteBatchNode преобразование дочернего ограничивающего прямоугольника

Я использую cocos2d 1.0.1.

Я создал CCSpriteBatchNode, он включает в себя CCSprite (назовем его parentLayer), который включает в себя некоторое число X потомков (CCSprites).

Проблема в том, что при вращении parentLayer все спрайты (дочерние элементы) отображаются правильно, однако ограничивающие рамки находятся в том же месте (где они были до поворота), поэтому мировые координаты этих спрайтов не будут изменены.

Конечно, все вышеперечисленное прекрасно работает без CCSpriteBatchNode. Но я хотел бы использовать пакетный узел из-за количества задействованных спрайтов.

Вопрос в том, есть ли способ обновить ограничивающие рамки и дочерние позиции соответственно?

1 ответ

Решение

О скольких спрайтах мы говорим? Я просто пошел бы с быстрым вызовом перечисления, чтобы повернуть каждого в отдельности. Я никогда не замечал снижения производительности при этом, не так ли?

CCArray *listOfChildren = [parentLayer children];
for (CCSprite *sprite in listOfChildren) {
    [sprite setRotation:someValue];
}
Другие вопросы по тегам