0

我正在设计的游戏使用多个嵌套的 CCSprite,因此当父精灵移动、旋转、缩放等时,子精灵也会自动完成,孙子也会这样做。

它工作得很好,但很快就陷入困境,因为我没有实现批处理节点,目前它一次进行了超过 4000 次绘制调用,这显然不是最佳的。

但是据我所知,使用批处理节点的唯一方法是使所有精灵成为批处理节点的子节点。我想也许我可以将每个父节点添加到批处理节点,然后将其余的添加为那个节点的子节点,但这不起作用。

有任何想法吗?我想避免每次父子移动时都必须手动计算每个子精灵的位置、旋转、比例等,目前这似乎是我能想到的唯一方法。

4

1 回答 1

0

看起来您实际上可以将子级嵌套在 ccsprite 中,并让它们成为批处理节点的一部分,只要父级是批处理节点的子级。当我第一次尝试这个时,当我创建其中一个精灵的孩子时,我只是忘记将“spriteWithFile:”更改为“spriteWithSpriteFrameName:”。现在它完美地工作,全部在一个批处理节点中,一次绘制调用。万岁!

于 2013-05-22T00:55:02.440 回答