![]() |
Обратная маска и MouseEvent под ней
Нужно сделать обратную маску. Т.е есть общее затемнение и необходимо не затемнять только определенную область и соответственно в этой не затемненной области должны срабатывать события мыши нижних слоев.
Обратная маска с помощью смешивания blendMode (mask.blendMode = BlandMode.LAYER и container.blendMode = BlandMode.ERASE) работает, но события мыши отсутствуют в открытой области. Есть идеи? |
InteractivePNG, видимо.
|
Не спасает
|
Мне бы такую скорость О__о
Как еще плеер может определить, прозрачно в этой точке или нет, кроме как через битмапдату и установленный порог? Быстродействие будет на нуле конечно, с битмапдатой на весь экран то, которую надо постоянно перерисовывать. Если бы только на клик, еще ладно. А если на MOUSE_MOVE или каждый кадр, плеер повесится. Добавлено через 5 минут Конечно, если маска статичная, то все не так страшно. |
Починил
Код AS3:
|
И что, в затененных областях мышь не работает? )))
Вопрос свой перечитайте. |
Не работает.
Да, маска статичная Добавлено через 17 часов 35 минут Возникла совсем непонятная мне проблема, при добавлении на сцену объекта, который содержит в себе затемнитель и наложенную на него маску по началу все работает нормально, но если я изменю маску (создам даже новый экземпляр этого объекта с затемнителем но маской в другой области), то события мыши уже не происходят, если маска останется в том же месте, то все будет в порядке. Я долго искал причину бага и обнаружил лишний Bitmap на сцене в том же контейнере, куда добавляется объект с затемнителем и маской, Bitmap этот добавляется InteractivePNG, свойство visible = false. Что интересно, если удалить этот Bitmap со сцены, то это никак не поможет делу, а вот если его сдвинуть за пределы сцены, то маска снова работает как нужно в любом месте. Выглядит этот костыль так: Код AS3:
|
| Часовой пояс GMT +4, время: 18:59. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.