如何将CCSpriteFrame转换为CCTexture2D(Cocos2d)

时间:2011-11-24 18:11:32

标签: iphone ios xcode cocos2d-iphone

是否可以转换从CCSpriteFrame获取的CCSpriteFrameCache,并将其转换为可在精灵纹理属性上设置的纹理?

2 个答案:

答案 0 :(得分:2)

假设您的CCSpriteFrame名为frame,您可以使用:

[sprite setDisplayFrame:frame];

change the sprite's frame如果它使用相同的纹理。如果纹理不相同,则必须创建一个新的精灵:

CCSprite* sprite = [CCSprite spriteWithTexture:frame.texture];
[sprite setDisplayFrame:frame];

但是既然你已经有了CCSpriteFrame,你也可以调用initWithFrame

CCSprite* sprite = [CCSprite spriteWithSpriteFrame:frame];

答案 1 :(得分:0)

是的,它有一个texture功能:

[[[CCSpriteFrameCache sharedSpriteFrameCache]spriteFrameByName:@"MyFrame"]texture];

CCSprites有一个名为setTexture的方法。