"Недопустимая текстура для спрайта" Ошибка карты листов Cocos2d - PullRequest
0 голосов
/ 12 августа 2011

Я пытаюсь сделать игру в Cocos2d, которая использует ортогональную карту тайлов.Я создаю карту в плитке, используя простой набор плиток, который я нарисовал в Adobe Illustrator.Плитки имеют размер 32x32 пикселя, а карта имеет размер только 20x20 пикселей.Когда я использую плитку в Cocos2d, она отлично работает, когда я тестирую ее на симуляторе iPhone.Однако, когда я тестирую его на своем iPod touch, приложение вылетает (завершается с помощью NSException) и выдает сообщение об ошибке:

- (id) initWithTexture: (CCTexture2D *) texture

{

NSAssert(texture!=nil, @"Invalid texture for sprite");
CGRect rect = CGRectZero;
rect.size = texture.contentSize;
return [self initWithTexture:texture rect:rect];

}

Я перепутал карту и плитки, но не могу заставить приложение работать.Любая помощь приветствуется.Благодаря.

Ответы [ 2 ]

3 голосов
/ 08 октября 2012

У меня была такая же проблема. Дело в том, что я не добавил изображение набора плиток в свой проект. Когда приложение было скомпилировано, этот ресурс не был скопирован на устройство, поэтому текстура не может быть загружена. Я просто добавил изображение для набора плиток, и все заработало. Надеюсь, это кому-нибудь поможет.

0 голосов
/ 13 августа 2011

Не уверен насчет этого - но, возможно, вы не правильно указали имя файла.Если у вас есть файл с именем image.PNG, но вы ссылаетесь на него как @"image.png", он будет работать в симуляторе, но не при развертывании на устройстве.

Я узнал об этом из этой книги .

...