![]() |
Сдается мне, что лагает эта система, скорее всего, от чего-то другого. Не во вращении 30 картинок дело.
|
Профайлер (скаут) мгновенно показывает такие вещи, без гаданий где затык.
|
Цитата:
|
а какого размера битмапа?
|
Цитата:
Добавлено через 50 минут Цитата:
[frameRae:45] (все теже картинки 100х100) - FPS при 50 объектах почти не проседает. - при 100 объектах, 22-37 короче среднее FPS 30. Мне подходит вообщем. Как у меня это получилось: Я просто сделал анимацию (вращение+scale) в самом флеше. А самое главное, что анимация должна быть типа "Анимация движения" (при "Классической анимации движения" падает FPS) + если вы анимируете символ в котором есть маски (или возможно еще что то типа слоев, и других вложенных клипов) то для анимации обращайте данный клип в еще один клип, и производите трансформации уже с ним. Почему в клип, а не в Графику? Потому, что при обращении в графику тоже падает FPS. Даже не помогает преобразование в ключи. Надеюсь что так работает не только у меня, а мое решение тоже еще кому то поможет! :) --- --- --- Еще я выявил, что FPS начинает падать, когда поверх или снизу данного клипа размещается еще какой то клип. То есть если они друг друга перекрывают. Это особенности рендера Flash? |
Вложений: 3
Это костыльное решение. Да и вообще не решение, по сути. FPS все равно падает. И не важно до какого значения.
Скорее всего графика там у тебя векторная. Или в самих картинках, или в масках. Но тут точно какая-то дезинформация. Вот тут вообще 200 вращаются, и ни сколько FPS не проседает. Можно и 300 сделать, будет то же самое Код AS3:
|
Вложений: 4
Это растр. Импортирую в библиотеку swc только растр. Из вектора - маска, для каждого изображения.
Изображение которое я вращаю - свечение. Потом в определенное время я включаю visible = true - красной зоны (изображение ). Оно как раз перекрывает свечение, ну или под ним. Не суть. И начинает падать FPS. Позже попробую показать флеху и код. --- --- --- Вот флешка и исходники. Убрал векторные маски - ничего не изменилось, на FPS никак не повлияло. Дело просто в унылом рендере флеша. :( код: Код AS3:
|
Не надо гнать на флеш) я тебе привел код и файл, к котором двести картинок вращается. Запусти его у себя на компе. Если будет стабльно 30 фпс, значит дело в твоем коде. Если будет провисать, значит дело в компе. У меня и посерьезнее рендер бывал без провисаний, причем намного серьезнее
Цитата:
п.с. Открыть исходник не могу. Нет у меня Flash CC |
Цитата:
Как думаешь может посмотреть в сторону блиттинга, если проблема не решиться? Может поможет? |
Просмотрел исходник, причина лагов ясна - НЕ нужно оборачивать растровую картинку в мувик и делать над ней анимацию во флеше, это вся причина лагов. Как исправить:
1) Добавлять готовую растровую картинку сразу на сцену, НИ В КОЕМ случает НЕ НУЖНО оборачивать её ни в какие мувиклипы. 2) Анимацию вращения и увеличения создавать программно. Итог: лагов не будет. |
| Часовой пояс GMT +4, время: 07:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.