Тема: [Starling] TestureAtlas vs Clipped Image
Показать сообщение отдельно
Старый 29.01.2014, 15:27
olkina вне форума Посмотреть профиль Отправить личное сообщение для olkina Найти все сообщения от olkina
  № 1  
Ответить с цитированием
olkina
 
Аватар для olkina

Регистрация: Apr 2004
Адрес: Ramat Gan, Israel
Сообщений: 30
Question TestureAtlas vs Clipped Image

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

1. Сделать атласы (если картинку можно разрезать на 3-10 частей, то мне понадобится 8 отдельных атласов) под каждое количество полос, загрузить картинку как класс, загрузить соответствуюший атлас, создать TexturedAtlas, создавать по текстуре на каждую полоску и из этих текстур настричь Image-ей.

2. Сделать один атлас со всеми полосками, а дальше, как и в первом случае: загрузить картинку как класс, создать TexturedAtlas, по текстуре на каждую полоску (в смысле, что в моем атласе будут 52 полосы, но мне понадобятся только, нарпимер, 5 (если на экране конфигурации выбрали 5 полос)), и из полученных текстур наделать Image-ей.

3. Не пользоваться алтасами, а загрузить картинку, как класс, сделать соответствующее количество Image-ей со всей картинкой и обрезать каждый из них, чтобы получились полоски.

Теперь вопросы:

а) В плане скорости написания кода второй вариант мне удобнее всего. Но я думаю, что TexturedAtlas, содержащий 8 разных вариантов нарезки базовой картинки будет занимать в 8 раз больше оперативной памяти, чем TexturedAtlas, содержащий только один вариант, я права?

б) Кроме того, если в моем случае я могу нарезать картинку вручную, может, мне стоит съэконимоить ресурсы и не создавать TexturedAtlas вообще?
в) Есть ли потом разница в работе с Image-ем, если он обрезан? Какие у него потом будут размеры - оригинальной картинки или урезанной? А что будет храниться в оперативной памяти: вся базовая картинка или только обрезанная?

г) Может, есть еще варианты, о которых я не подумала?

Заранее спасибо