Полагаю, что каждый баннермейкер ломал голову над тем, как в очередной раз сделать эффектную смену изображений. Все способы уже испробованы, повторяться не хочется. Тогда в голове возникает идея с плавным переливанием картинок. Но часть флеша, отвечающая за простую анимацию, такого удовольствия нам не предоставляет, по-этому я поделюсь с вами способом, как реализовать такую анимацию с помощью нехитрого кода. Получиться у нас должна такая анимация.
Как всё происходит. У нас есть три слоя. Первый слой – код (всегда ставлю его наверх, чтобы проще было редактировать). Второй слой – это MovieClip [mask_mc] с маской. Но маска не простая, в ней находится некая фигура, которая редактируется в зависимости от потребностей дизайна. Но с обязательной градиентной заливкой и наличием цвета заливки с нулевой прозрачностью. В моем примере это выглядит так:
Третий слой – это MovieClip [topPicture_mc] с нашим изображением. Сама по себе маска не сработает так, как нам нужно. По-этому в первом кадре слоя с кодом пишем следующее:
this.topPicture_mc.cacheAsBitmap = true;
this.mask_mc.cacheAsBitmap = true;
this.topPicture_mc.setMask(mask_mc);
Разберем по порядку.
В первой и второй строчке мы приказываем картинке и маске закешироваться в bitmap.
В третьей строчке мы объявляем клип [ mask_mc ] маской клипа [ topPicture_mc ].
Теперь над клипом с маской можно проводить различные модификации и анимировать, как захочется. Будьте аккуратны, вручную маску для клипа с картинкой делать не надо.
Исходник флешки прилагаю, так как в нем более наглядно показан принцип и использование такой анимации.
