Как изменить образ CCSprite в cocos2d v3.x

В cocos2d 2.x мы меняем образ CCSprite, используя CCTexture. Но в cocos2d 3.x CCTextureCache кажется устаревшим, так как Xcode предупреждает меня: "необъявленный идентификатор" CCTextureCache "". Или, может быть, я что-то пропустил, поскольку я новичок в кокосах.

Так как мы можем изменить образ CCSprite в v3??

Спасибо.

2 ответа

Решение

Я думаю, что я знаю, как это сделать.

  1. Мы должны использовать spriteSheet, созданный с помощью TexturePacker [примечание: может быть, неправильно говорить о внешних ресурсах, подобных этому в SO], например (например, у нас есть 2 изображения: monster_01.png и monster_02.png).
  2. Мы добавляем.plist и.png в xCode
  3. Мы помещаем спрайт-лист в кеш
  4. и затем мы можем создать CCSprite с фреймом, используя элемент таблицы спрайтов.
  5. Это изображение можно изменить.

Некоторый код:

3) ставим в кеш

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"monsterSpriteSheet.plist"];

4) Создаем спрайт

CCSprite * mySprite = [CCSprite initWithSpriteFrame: [CCSpriteFrame frameWithImageNamed: @"monster_01.png"]];

5) Чтобы изменить изображение:

 [mySprite setSpriteFrame:[CCSpriteFrame frameWithImageNamed: @"monster_02.png"]];

Это прекрасно работает с cocos2d v3.

Я потратил 6 часов на этот процесс. Иногда я чувствую себя глупо.

Вы можете сделать это с помощью этого

CCSpriteFrameCache и после этого вы можете изменить свой спрайт с помощью функции setSpriteFrame из ccsprite.

Другие вопросы по тегам