![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Как сейчас у меня реализовано:
Есть игровой персонаж. У него есть разные состояния - идет, стоит, бьет и т.п. Персонаж представляет из себя мувиклип внутри которого находятся мувиклипы разных состояний и чтобы сменить одно состояние на другое достаточно все мувиклипы кроме нужного сделать невидимым. Стоит отметить что при инициализации персонаж нужно раскрасить и одеть, т.е. пробежаться по всем мувиклипам состояния и сделать следующие действия: 1) Раскрасить (наложение (ColorMatrixFilter) на разные части тела) 2) Одеть (вставить в разные части тела спрайты одежды). Вопрос - как сделать иначе, чтобы меньше тормозило при отображении? Имеет ли смысл объединить все состояния в одно и бегать по frameLabel'ам? |
|
|||||
|
Регистрация: Dec 2006
Адрес: Novosibirsk
Сообщений: 93
|
Поднимаю тему.
|
|
|||||
|
поднимать темы не стоит...
по сабжу - бегать по фреймам - не айс, по-моему. поскольку заходя каждый раз в фрэйм вам по новой его нужно красить и проводить остальные манипуляции
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Нарисуйте части тела (дефолтные)
Сложите их в один мувик со всеми анимациями (бить-стрелять и тд) Добавьте этот мувик на сцену Через getChildByName или еще как-то очистите (removeChildAt) текущее содержимое частей тела и поставьте на их место заранее отрисованые в bitmap скины для частей тела. То есть первоначально отрисованный персонаж будет просто анимированным набором контейнеров, в которые мы затем добавляем нужные нам скины
__________________
...вселенская грусть |
|
|||||
|
strange mood
|
1. Делать части невидимыми лучше при помощи removeChild, нежели visible=false и боже упаси alpha=0.
2. Имеет смысл включить битмап-кэширование для кусков персонажа, чтобы флэш не вычислял ColorTransform при отрисовке каждого кадра. 3. Более жестокое кэширование: одеваем-красим, затем пробегаемся по всем анимациям состояний, на каждом кадре срисовываем персонажа в битмап, затем вместо мувиков с анимацией используем мувик, который показывает полученную последовательность.
__________________
тонкий тролль, осеянный благодатью |
|
|||||
|
Регистрация: Jun 2010
Сообщений: 189
|
Битмап работает быстрее, чем векторная графика?
|
|
|||||
|
strange mood
|
Что по-вашему быстрее: отрисовать пачку пикселей, или по формулам кривых просчитать каждую замкнутую область, проверить на пересечение, рассчитать цвета и градиенты, наложить на это цветовую трансформацию, учесть поворот и искажение родительских контейнеров, чтобы вычислить в итоге ту же пачку пикселей, и только потом её отрисовать?
![]()
__________________
тонкий тролль, осеянный благодатью |
|
|||||
|
Регистрация: Jun 2010
Сообщений: 189
|
Да, логично. Время загрузки только растет.
|
|
|||||
|
Цитата:
__________________
...вселенская грусть |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:42. |
|
|
« Предыдущая тема | Следующая тема » |
|
|