Использование одной текстуры с двумя разными форматами пикселей - PullRequest
1 голос
/ 07 декабря 2011

Я не уверен, когда вы захотите сделать это (возможно, при переходе от низкого качества предварительного просмотра -> высококачественное изображение), но в любом случае кэш текстуры Cocos2D не позволяет использовать одно изображение с двумя разными текстурами.форматы.

[CCTexture2D setDefaultAlphaPixelFormat:kCCTexture2DPixelFormat_A8];
CCSprite* a = [CCSprite spriteWithFile@"image.png"];

[CCTexture2D setDefaultAlphaPixelFormat:kCCTexture2DPixelFormat_Default];
CCSprite* b = [CCSprite spriteWithFile@"image.png"]; // uses A8 not default

Есть ли способ обойти это?

1 Ответ

2 голосов
/ 07 декабря 2011

Нет, кэш текстур рассматривает текстуры с тем же именем файла, что и идентичный.

Есть только два способа сделать эту работу:

  1. изменить CCTextureCache
  2. сохранить одно и то же изображение, используя два разных имени файла

Если вас беспокоит размер приложения для загрузки, вы также можете скопировать файлы изображений из основного комплекта в каталог документов и изменить имена файлов при первом запуске приложения.

...