![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2007
Сообщений: 83
|
Всем привет.Задача следующая.
Имеется спрайт в который каждый фрейм рисуются линии. Каждый раз меняется их длина и местоположение. После этого к спрайту(то бишь ко всем отрисованным линиям) применяется фильтр Glow, что приводит к капитальным тормозам. Я вот подумал может можно как-то оптимизировать этот процесс или добиться того же результата другими способами без использования фильтра? |
|
|||||
|
Ну да
Можно разделить линию на составляющие 2-х типов: середина и конец Далее, можно нарисовать середину (кусочек линии с "уже примененным" GlowFilter) - то есть BitmapData в которую скопирован внешний вид середины То же повторить для конца линии Составить много-много линий из полученных кусочков (graphics.beginBitmapFill())
__________________
...вселенская грусть |
|
|||||
|
Lorem ipsum
|
дорисовывать каждую новую линию в спрайт и тут же отрисовывать его в прозрачную битмапдату? чую что проблема в куче линий, а не в фильтре.
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Jun 2007
Сообщений: 83
|
Цитата:
Хорошо бы немного кода... Цитата:
Цитата:
|
|
|||||
|
Регистрация: Jun 2006
Сообщений: 400
|
Цитата:
|
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Метод gloomyBrain действительно быстрый (ещё бы и в битмапу рисовать), но, например, пересечение линий будет рисовать некорректно - свечение одной линии перекроет другую.
Я бы попробовал примерно как советует Zebestov. Т.е. рисуем линию в спрайт, спрайт "рисуем в битмапу" к которой применён фильтр, чистим спрайт. Без фильтра работает быстро возможно т.к. установка фильтра включает cacheAsBitmap. С включенным cacheAsBitmap при изменении спрайта тормозной векторный рендерер перерисовывает всю кучу линий во внутреннюю битмапу. Т.е. возможно тормозит не столько из-за фильтра, сколько из-за cacheAsBitmap=true у спрайта. Ну и там не забыть качество фильтру поменьше. А вообще хоть бы код тормозящий кинули на поковырять) |
|
|||||
|
Lorem ipsum
|
очень правдоподобно. автор — попробовал как я говорил? тут дело в том, что не я это придумал — этот популярная тактика в подобных случаях.
__________________
Поймай яблоко 2! |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:27. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|