Полноэкранная (1024x768) анимация iPad с проблемой около 1800 кадров.Низкий FPS - PullRequest
0 голосов
/ 08 июня 2010

Я пытаюсь воспроизвести полноэкранную (1024x768) анимацию на iPad со скоростью около 20 кадров в секунду.У меня есть сцена с 1800 полноэкранными кадрами.До сих пор я пробовал много подходов, но столкнулся с множеством проблем.

Мой первый подход состоял в том, чтобы получить текстуру, используя следующую функцию:

t = [[CCTexture2D alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"(%d)",startIndex] ofType:type]]];

передать ее спрайту с помощьюМетод setTexture, затем отпустите текстуру, затем создайте новую текстуру со следующим кадром и повторите процедуру, но при использовании этого подхода я получаю только около 7 кадров в секунду.

Мой второй подход состоял в том, чтобы предварительно загрузить около 10 текстур в кеше текстуры и сохранить их.в массиве и дать им спрайт, используя setTexture, а на заднем плане я заменяю старые текстуры новой текстурой в потоке, но проблема, с которой я сталкиваюсь, заключается в том, что создание новой текстуры и добавление в массив занимает некоторое время, и когда метод settextureназывается, спрайт отображает старую текстуру, потому что новая еще не загружена, но через некоторое время загружается новая текстура.

Есть ли способ запустить полноэкранную анимацию на iPad со скоростью около 20 кадров в секунду?Пожалуйста, помогите мне!

Спасибо

Фархан

1 Ответ

0 голосов
/ 08 июня 2010

Звучит так, как будто ваши данные необработаны, то есть не сжаты.Это (как вы заметили) будет очень тяжелым, и вы, скорее всего, столкнетесь с пропускной способностью и / или проблемами обработки.Я не знаком с iPad, поэтому не могу сказать, что наиболее вероятно;попробуйте профилирование.

Я бы предложил попробовать сжатый видеоформат, чтобы уменьшить требования анимации к пропускной способности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...