2

私は cocos2d の初心者であり、開発しながら学習しています。私は cocos2d ドキュメントを読み、また Ray Wenderlich のチュートリアルから、スプライト シートを作成しようとしましたが、これまでのところ、作成したスプライト シートからスプライトを読み込むことができませんでした。単純な CCSprite spriteFromFile: を直接使用すると、スプライトが正常に表示されます。とにかく、Zwoptex でスプライトシートを作成しました。png ファイルと座標を Cocos2d .plist として選択しました。両方のファイル (png と plist) をプロジェクトの Resources グループにドラッグ アンド ドロップし、init メソッドに次のコードを記述します。

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

CCSprite *block = [CCSprite spriteWithSpriteFrameName:@"pieceB1.png"];

ファイル名や大文字小文字を確認し、スプライトシートを何度も作り直しましたが、plist や png にあるにもかかわらず、cocos2d は pieceB1.png を読み込めません。plist ファイルのスクリーンショットは次のとおりです。

ここに画像の説明を入力

私が得たエラー:

2013-02-11 01:33:04.808 sequence[5787:12203] cocos2d: CCSpriteFrameCache: Trying to use file 'piece.png' as texture 
2013-02-11 01:33:04.815 sequence[5787:12203] cocos2d: CCSpriteFrameCache: Frame 'pieceB1.png' not found 
2013-02-11 01:33:04.818 sequence[5787:12203] cocos2d: Frame interval: 1 
2013-02-11 01:33:04.822 sequence[5787:12203] Application windows are expected to have a root view controller at the end of application launch 
2013-02-11 01:33:04.822 sequence[5787:12203] cocos2d: surface size: 640x960 
2013-02-11 01:33:07.044 sequence[5787:12203] cocos2d: CCSpriteFrameCache: Frame 'pieceG1.png' not found 
2013-02-11 01:33:07.045 sequence[5787:12203] *** Assertion failure in +[CCSprite spriteWithSpriteFrameName:]

ありがとう。

4

1 に答える 1

3

ファイルがターゲットにあることを確認しましたか? また、あなたのゲームは HD を有効にしていますか? はいの場合、plist と png ファイルの両方に適切な接尾辞を付ける必要があります。ファイルが見つからない場合、「addSpriteFramesWithFile」呼び出しはサイレントに失敗します。

于 2013-02-10T18:13:25.710 に答える