【问题标题】:Question about cocos2d sprite sheets关于cocos2d sprite sheet的问题
【发布时间】:2011-05-06 19:19:18
【问题描述】:

精灵表的具体限制是什么? API 参考是这样说的:

A CCSPriteSheet can reference one and only one texture (one image file, one texture atlas).

这是否意味着我可以像动画一样使用包含大量精灵的 512x512 大纹理,并且仍然可以使用精灵表来渲染它?即使我可能有多个精灵实例位于动画的不同帧上?

我目前正在加载这样的纹理

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"fiends.plist"];

并像这样分配它们

fiendSprite = [CCSprite spriteWithSpriteFrameName:spriteName];

即使游戏中不同的塔使用大纹理的不同部分,我是否可以使用精灵表来绘制这些精灵??

【问题讨论】:

    标签: objective-c opengl-es ios4 cocos2d-iphone


    【解决方案1】:

    只要你让你的 sprite 成为你的 sprite sheet 的孩子,你应该能够做到这一点。 cocos2d 论坛上有很多这样的例子,这里有一个good post 也可以让你了解更多信息。

    【讨论】:

    • 这是否也意味着精灵表性能提升?这感觉就像不劳而获,感觉有点不对劲..
    • 是的,这种性能提升就是精灵表存在的原因——它比渲染一堆单独的图像具有更好的性能。请参阅此链接的第 4 篇文章,该文章解释了 cocos2d 的主要作者如何工作。 cocos2d-iphone.org/forum/topic/5370
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-19
    • 2014-01-16
    • 2012-11-02
    • 1970-01-01
    • 2014-05-12
    • 2012-09-21
    相关资源
    最近更新 更多