1

通常、アプリにバンドルされているスプライトシートを次のようにロードします。

CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile( "myspritesheet.plist");
CCSprite *pSprite = CCSprite::createWithSpriteFrame( CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName("sprite_monster.png");
pSprite->setPosition(ccp(100.0f,100.0f));
this->addChild(pSprite);

ただし、テクスチャの数が増え、より簡単な更新に対応するため、スプライトシートの一部をサーバーに配置して、sdcard (または iOS のキャッシュ フォルダー) にダウンロードすることを計画しています。ただし、ゲームにロードする方法がわかりません。

このリンクは、png テクスチャをロードする方法を示しています。しかし、複数のスプライトを 1 つのテクスチャにパックした場合は、.plist ファイルを読み込んで CCSpriteFrameCache にフィードする必要があります。誰もそれを行う方法を知っていますか? または、複数のスプライトを持つテクスチャから個々の CCSprite をロードする方法はありますか?

前もって感謝します!

4

1 に答える 1

0

このコードを試してください:

CCSpriteBatchNode *batchNode = CCSpriteBatchNode::create("myspritesheet.png");
this->addChild(batchNode);
CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("myspritesheet.plist");

CCSprite *pSprite = CCSprite::createWithSpriteFrameName("sprite_monster.png");
pSprite->setPosition(ccp(100.0f,100.0f));
this->addChild(pSprite);
于 2014-01-06T10:00:45.040 に答える