Изменение текстуры игры, но изображение не заменяется в соответствии с определением Cocos HD - PullRequest
0 голосов
/ 23 февраля 2012

Я делаю игру в cocos2d. Я проверяю уровень спрайта и обновляю текстуру соответственно. Теперь при запуске изображение помещается в HD-формате. Теперь, когда начинается игра и я начинаю перемещать спрайт, HD-изображение заменяется обычным Я проверяю замену текстуры этим кодом.

int value = [self.weapon.weaponLevel intValue];
NSString *path = [[NSBundle mainBundle]pathForResource:@"name" ofType:@"png"];
UIImage *imageView = [[UIImage alloc]initWithContentsOfFile:path];
CCTexture2D *frame = [[CCTexture2D alloc]initWithImage:imageView];
[self.player setTexture:frame];

Может кто-нибудь, пожалуйста, помогите мне здесь. Благодарю. С уважением.

1 Ответ

2 голосов
/ 23 февраля 2012

Нет необходимости проходить через NSBundle и UIImage, когда вы можете использовать CCTextureCache, который обрабатывает все разрешение пути и обнаружение HD / SD внутри.

Плюс, как следует из названия, он кэширует текстуру, чтобы последующее использование того же файла спрайта было быстрее:

Вот что вам нужно:

CCTexture2D *frame = [[CCTextureCache sharedTextureCache] addImage:@"name.png"];
[self.player setTexture:frame];
...