1

我正在学习新版本的 cocos2d-x 2.1.4 导入 cocos2d 到 x 版本,我想移植这个部分:

spriteSheet = [CCSpriteBatchNode 
batchNodeWithFile:"foo.gif"];
player = [CCSprite spriteWithBatchNode:spriteSheet
rect:CGRectMake(0, 0, 30, 56)]; 

至 :

spritSheet = CCSpriteBatchNode::create("foo.gif");
player = CCSprite::??? which function here ???();

在这里阅读:http: //www.cocos2d-x.org/projects/cocos2dx/wiki/API_Change_List_from_v1x_to_2x?version=2

CCSprite::spriteWithBatchNode(...) 被移除,请使用: sprite = CCSprite::spriteWithTexture(batchNode->getTexture(), CCRect*); batchNode->addChild(sprite); 反而

但是 CCSprite 中没有 spriteWithTexture 是什么替换?

4

2 回答 2

3

那么你可以使用这个。他们修改了函数调用

CCSprite *pSprite = CCSprite::createWithTexture(pTexture, rect);
于 2013-06-19T08:50:29.867 回答
0

我还没有使用它最新的 cocos,但考虑到错误,您似乎只需要执行以下操作:

player = [CCSprite spriteWithTexture:[spriteSheet getTexture];
[spriteSheet addChild:player]

他们只是删除了 spriteWithBatchNode init,但是您可以使用 getTexture 从批处理节点轻松获取纹理

于 2013-06-19T08:35:28.167 回答