![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2009
Адрес: Северный островок дефолт-сити
Сообщений: 144
|
Цитата:
За всевозможные варианты всем спасибо. Вчера тоже увидел в другом месте удаление через try и catch, до этого что-то и не догадывался о таком способе (не считая первоначального обучения, сам ещё ни разу не использовал try/catch )Но в этом проекте наверное пока оставлю через visible, там ещё других проблем ой-ой-ой ![]() |
|
|||||
|
visible = false отменяет перерисовку. Не знаю, откуда вы взяли обратное, но по тесту производительности это очень хорошо видно.
Помещать removeChild в try можно только в том случае, если аргумент removeChild'а никогда не будет равен null, как это ни странно звучит. В том смысле, что можно подстраховаться от краша обработав исключение, а использовать исключения в логике программы неграмотно и медленно. Исключения работают быстро, только если они не происходят . |
|
|||||
|
Banned
[+4 25.09.09]
[+1 12.11.09] [+4 12.12.09] Регистрация: Sep 2009
Сообщений: 231
|
"show redraw regions" говорит об обратном
|
|
|||||
|
Цитата:
__________________
я могу стать всем, если только захочу |
|
|||||
|
Регистрация: May 2009
Сообщений: 220
|
Цитата:
Тоже интересовал этот вопрос. Нашел комп послабже моего и сделал тест, в котором: - динамически дабавил в дисплей лист 5000 спрайтов с приличными размерами. - далее через Timer сделал fps равное примерно 1000 в секунду (по номиналу). - на каждом "кадре" все спрайты меняли координаты. Сперва для всех спрайтов visible поставил в false и потестил. Результат для 200-т "кадров" - 1300 милисекунд. Затем поставил visible = true... В общем для 1-го "кадра" результат - 8100 примерно. Крайне сомнительно, что с visible = false отрисовка происходит. Однако, тот же тест, но без добавления спрайтов в дисплей лист действительно показал незначительный, но стабильно более быстрый результат. Соответственно, я педположил, что "разница" вызвана самим фактом нахождения в дисплэй-листе нежели значением visible. Тем не менее я основываюсь на результатах теста, а не на теории. И возможно где-то ошибаюсь в рассуждениях. Если так, то где ![]() UPD: а у меня "show redraw regions" не показывает отрисовку спрайтов. Последний раз редактировалось switcher!; 12.11.2009 в 13:31. |
|
|||||
|
Упрямая штука тесты. Я даже не могу представить, как плеер будет рисовать объекты у которых visible стоит в false, с нулевой альфой шоле? Нет, глупость, конечно.
![]() |
|
|||||
|
Регистрация: May 2009
Сообщений: 220
|
я бы тоже посмотрел пример с клипами, с visible = false -)
|
![]() |
![]() |
Часовой пояс GMT +4, время: 18:49. |
|
|
« Предыдущая тема | Следующая тема » |
|
|