Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.04.2011, 18:29
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 1  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
По умолчанию Можно ли сделать несколько "блуждающих" масок?

Есть некий контейнер, в котором достаточно много анимированных объектов. Есть необходимость накрыть все это непрозрачным слоем, например, синим с морскими волнами, и к некоторым объектам привязать "градиентные дыры" (дыры со смазанными краями за счет градиента по альфе) в этом слое. При этом объекты могут двигаться и дыры должны ползать над ними. При этом дыры могут пересекаться и это должно выглядеть естественно.

Есть какое-нибудь решение на этот счет?

ЗЫ. Попытка решить в лоб (маска в виде мувиклипа, внутри которого расположены двигающиеся мувики-круги с градиентом по альфе + cacheAsBitmap для контейнера и маски) успеха не принесла.

Старый 05.04.2011, 18:45
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Что именно не получилось? Что не так с этим методом "в лоб"?
__________________
Reality.getBounds(this);

Старый 05.04.2011, 18:59
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 3  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
слетает градиент с маски (круг становится резким), пропадают отдельные картинки...
там в контейнере уж больно много всего намешано

в принципе, если так, как я описал, должно работать, то я буду копать в этом направлении
но если оно работать все равно не будет, то не хотелось бы тратить время

Старый 05.04.2011, 21:03
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 4  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
К сожалению, известный трюк с градиентной маской - это именно хак. В некоторых случаях он не работает (неправильно считается альфа, просвечивают или мерцают случайные куски).

Старый 05.04.2011, 22:10
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
трюк с градиентной маской - это именно хак
Режимы наложения - это хак? А в Adobe, наверное, до сих пор не знают...
mikhailk, просто не совсем понятно, насколько сложна задача визуально. Ну, то есть, одно дело - силуэты со слегка размытыми краями, другое дело "круги с градиентом". Если сами по себе круги с градиентом дают артефакты при наложении друг на друга, то они, безусловно, будут и на маскируемом объекте. А легкое размытие краев можно получить, к примеру, если в контейнере-маске будут плавать резкие силуэты, но на сам контейнер повесить блюр. Однако опять же, если рыбки или что там у вас, пересекутся, в месте пересечения размытия на верхней "рыбке" не будет)) Вобщем тут технологию надо по задаче подбирать.
__________________
Reality.getBounds(this);

Старый 05.04.2011, 22:57
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 6  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
Цитата:
Сообщение от Wolsh Посмотреть сообщение
Режимы наложения - это хак? А в Adobe, наверное, до сих пор не знают...
Нет, хак - вот это.
Цитата:
маска в виде мувиклипа... ...с градиентом по альфе + cacheAsBitmap для контейнера и маски
И он в некоторых случаях не работает. Например, анимации с масками внутри маскируемого символа почти гарантированно приводят к нежелательным визуальным эффектам.

А вот если вы расскажете (или ссылку дадите), как сделать градиентную маску через режимы наложения - я вам скажу "спасибо". По-моему, это было здесь, на flasher-е: кто-то описывал идею - но у меня не получилось её повторить.

Старый 05.04.2011, 23:20
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 7  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
http://flasher.ru/forum/showthread.php?t=141485
То есть маска и маскируемый помещаются в один контейнер, этому контейнеру ставится BlendMode.LAYER,
а маске - BlendMode.ALPHA или BlendMode.ERASE в зависимости от задачи, плюс кеширование в битмап, если маска – векторный шейп.
__________________
Reality.getBounds(this);

Старый 05.04.2011, 23:34
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 8  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
просто не совсем понятно, насколько сложна задача визуально.
На уровне идеи это выглядит примерно так:



На локации, которая сама по себе собрана из различных объектов, в том числе анимированных, размещены активные объекты (в примере - персонажи), которые двигаются по локации. С каждым из них связана своя область видимости, которая как раз и реализована как маска. Соответственно, маски тоже двигаются, вместе с персонажами.

Старый 06.04.2011, 00:18
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 9  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
Wolsh, здорово . Не нужно будет искать, если вдруг понадобится. Спасибо .

Старый 06.04.2011, 00:18
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 10  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Двигаем дырки мышкой.
Вложения
Тип файла: rar MaskCrossTest.rar (234.5 Кб, 92 просмотров)
__________________
Reality.getBounds(this);

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:09.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.