1

在我的游戏中,有很多敌人(子类CCNode),它们的动画帧分布在多个纹理文件(enemy01.png、enemy02.png...)中,并且可能在同一场景中生成来自不同纹理的敌人。

我想要一种统一的方式来动态地将随机生成的敌人添加到正确的CCSpriteBatchNode中,但是查找表似乎并不那么优雅。有没有更好的处理方法?

谢谢

4

1 回答 1

0

由于每个敌人都使用自己的纹理,因此您可以为每个敌人使用一个精灵批处理节点。因此,当您创建敌人“X”时,从您存储它的任何位置(可能是 NSDictionary)获取相应的精灵批处理节点应该不难。

请记住,每个敌人类型的一个精灵批处理节点违背了目的,特别是如果每​​个敌人的纹理图集相当小并且甚至不接近最大允许尺寸(旧设备为 1024x1024,iPhone 3GS 和更新设备为 2048x2048 或更大) )。如果可能,将尽可能多的图像填充到一个纹理图集中并使用一个精灵批处理节点。

于 2012-07-12T09:48:26.577 回答