【问题标题】:Change a sprite texture, with image from a sprite-sheet使用精灵表中的图像更改精灵纹理
【发布时间】:2012-02-10 09:10:04
【问题描述】:

这就是我如何创建一个带有纹理的精灵,形成一个精灵表。但是以后如何更改精灵纹理呢?

我尝试过使用setTexture,但我无法正常工作。

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"gameSpriteSheet.plist"];        
CCSpriteBatchNode *spriteSheet = [CCSpriteBatchNode batchNodeWithFile:@"gameSpriteSheet.png"];
[self addChild:spriteSheet];

// Add hangman graphic sprite to Scene
playerSprite = [CCSprite spriteWithSpriteFrameName:@"playerX"];
playerSprite.position = ccp(580, 400);
[self addChild:playerSprite];

【问题讨论】:

    标签: xcode cocos2d-iphone sprite ccsprite sprite-sheet


    【解决方案1】:

    你不能。

    CCSpriteBatchNode 使用单个纹理。添加到 CCSpriteBatchNode 的所有精灵必须使用相同的纹理 - CCSpriteBatchNode 的纹理。

    我确定您面临的问题有不同的解决方案,请从不同的角度考虑一下。例如,您可以通过简单地创建一个新精灵来实现相同的效果。

    如果您只想更改精灵的 CCSpriteFrame,请使用 setDisplayedFrame。

    【讨论】:

    • setDisplayedFrame 正是我所需要的......谢谢!
    • 如何为他想要的新纹理图集创建一个新的精灵批处理节点,然后再删除旧的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多