![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
Здравствуйте, появилась проблема, у меня на сцене много объектов, все они перетаскиваются, я беру один объект, начинаю таскать по сцене(идет обработка столкновений, высчитывается как объект должен "прилипнуть " к ближайшему объекту и прилипает к нему), и вот таскаю я его таскаю, и через секунд 5-10, он начинает вести себя как ластик - начинает стирать объекты, как будто он перерисовался в битмап (размером эдак 100х100), и некоторые объекты , и в некоторых объектах, которые касаются этой битмапы, пропадают внутренние спрайты. Но если стертый объект потом повернуть, внутренние объекты , которые были удалены, возвращаются на место. Что это может быть? Во флеше есть кеш графики? Плейер FP11 debug
|
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
все графика отрисована чарез графикс, многослойные объекты с фильтрами, все объекты в дисплейлисте.
Причем еще заметил такую закономерность, в течении секунд пяти все работает нормально, а потом толи FP что-то включает (может видя то, что он не успевает обрабатывать и графику и столкновения). пример, к сожалению выложить не могу, кода тоже мноооого, может есть какие -нибудь предположения хотя бы. |
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
допустим вот
тащим квадратный объект, он вырезает прямоугольник в двух соседних объектах. В каждом объекте - 2 основных слоя, слой с желтым объектом, и слой с красными, так вот этот квадратный объект вырезает только красные объекты, а желтые не трогает. И если потом желтый объект повернуть , красные объекты снова появляются если ставлю cacheAsBitmap - главному контейнеру, то вырезаться начинают и желтые объекты тоже. и еще вопрос, а смена версии плейера(при компиляции) может помочь в данной ситуации? сейчас компилирую под 10 Последний раз редактировалось Marlin; 24.03.2014 в 11:39. |
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
ни у кого нет чтоли никаких предположений?? А можно как нибудь поиграться с настройками дебаг плейера?
Когда поворачиваю главный контейнер все объекты появляются на своих местах, значит плейер как-то кеширует объекты.. Подойдет любой костыльный вариант опишу еше раз на всякий случай проблему: есть три слоя (layer1, layer2, layer3), есть три кнопки (btn1,btn2,btn3), соответственно при нажатии на кнопку допустим btn1, у layer1 - альфа устанавливается в 1, у двух других слоев в 0.2, с другими кнопками аналогично. в слое layer1 внутри есть два слоя : layer1.1 и layer1.2, и при нажатии на кнопку btn 1 , и установки слою layer1 альфы = 1, из него пропадает внутренний слой - layer1.1. затем, если повернуть оснойной контейнер, layer1.1 - появляется. данный баг проявляется после 10 секунд после запуска флешки, и также после поворота контейнера, также спустя примерно 10 секунд, в течении этих 10 секунд все работает превосходно. Последний раз редактировалось Marlin; 28.03.2014 в 08:37. |
|
|||||
|
Подтверждаю, есть такой баг в FP. Сам сталкивался. Как обойти его нормально не нашел, но в моем случае мне помогла отрисовка его в BitmapData вместе со всеми фильтрами, и вместо самого объекта, помещал в дисплей лист Bitmap с этой BitmapData. Костыль конечно, но это работает
п.с. Я такой вариант не пробовал, но возможно поможет после перетаскивания, в обработчике отпускания мыши вызвать принудительную перерисовку экрана |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:03. |
|
|
« Предыдущая тема | Следующая тема » |
|
|