-Рубрики

 -Приложения

  • Перейти к приложению Открытки ОткрыткиПерерожденный каталог открыток на все случаи жизни
  • Перейти к приложению Я - фотограф Я - фотографПлагин для публикации фотографий в дневнике пользователя. Минимальные системные требования: Internet Explorer 6, Fire Fox 1.5, Opera 9.5, Safari 3.1.1 со включенным JavaScript. Возможно это будет рабо
  • Музыкальный плеер
  • Перейти к приложению Всегда под рукой Всегда под рукойаналогов нет ^_^ Позволяет вставить в профиль панель с произвольным Html-кодом. Можно разместить там банеры, счетчики и прочее
  • Перейти к приложению Дешевые авиабилеты Дешевые авиабилетыВыгодные цены, удобный поиск, без комиссии, 24 часа. Бронируй сейчас – плати потом!

 -Всегда под рукой

 -Поиск по дневнику

Поиск сообщений в НАДЕЖДА_БЫКОВСКИХ

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 07.11.2009
Записей: 3690
Комментариев: 14238
Написано: 36801


Работа по уроку «Создание эффекта Боке»

Воскресенье, 15 Июня 2014 г. 04:07 + в цитатник
Цитата сообщения novprospekt Работа по уроку «Создание эффекта Боке».


Работа по уроку «Создание эффекта Боке».





Использовала урок Леночки (jzayka) и урок Создание эффекта Боке с demiart

Для того чтобы получать различные цветовые оттенки пузырьков, а также возможность помещать различные мувиклипы поверх фона и эффекта боке необходимо воспользоваться следующим кодом

code:

import Classes.Lights;
var colors:Array = [0xC58E55, 0xCC9933, 0x704D08, 0xDBBA77, 0xFFFFFF, 0x231708];
var light:Lights = new Lights();
light.init(600, 600, 170, 60, colors, 0.2, 2, 5, "up", 3);
addChildAt(light, 1)



15-06-2014 4-55-16 (700x488, 195Kb)


Кроме того необходимо изменить скрипт для класса Lights. Для этого в папке проекта открыть папку Classes и найти там файл AS "Lights". Открыть этот файл в программе Adobe Flash и заменить содержимое на следующий код

code:

package Classes
{
/* Import required classes */

import flash.display.MovieClip;
import flash.filters.BitmapFilter;
import flash.filters.BlurFilter;
import flash.events.Event;

//We need to extend the class so we can use the addChild() method.

public class Lights extends MovieClip
{
/* Vars */

private var lightsNumber:int; //The number of Lights on Stage
private var xSpeed:int; //The horizontal speed the Lights have
private var ySpeed:int; //Vertical Speed
private var lightsDir:String; //Direction the Lights are going, this can be Up, Down, Left or Right
private var areaW:int; //The width of the area where the effect will take place
private var areaH:int; //Height
private var lights:Array = new Array(); //This array will store all the Lights MovieClips so we can use them outside the For where we are going to create them.

/* Main function */

public function init(areaWidth:int, areaHeight:int, numberOfLights:int, lightSize:int, lightColors:Array, minimumScale:Number, hSpeed:int, vSpeed:int, dir:String, quality:int):void
{

/* Set variables */

areaW = areaWidth;
areaH = areaHeight;
lightsNumber = numberOfLights;
lightsDir = dir;

/* Use a for to create the parameter-specified number of lights*/

for (var i:int = 0; i < numberOfLights; i++)
{
/* Create the specified number of lights */

var light:MovieClip = new MovieClip();

/* Set random speed to x and y based on the params*/

xSpeed = Math.floor((Math.random() * (hSpeed - -hSpeed + 1)) + -hSpeed);
ySpeed = Math.round((Math.random() * vSpeed) + 0.5);

light.xSpeed = xSpeed;
light.ySpeed = ySpeed;

/* Create lights */

light.graphics.beginFill(lightColors[Math.floor(Math.random() * lightColors.length)]);
light.graphics.drawCircle(0, 0, lightSize / 2);
light.graphics.endFill();

/* Set a position based on the params specified */

light.x = Math.floor(Math.random() * areaWidth);
light.y = Math.floor(Math.random() * areaHeight);

/* Add blur, we declare the var here to get a new blur w/every light */

var b:int = Math.floor(Math.random() * 10) + 5; //Calculates a random Blur between 0-9 and adds 5 to the result.

var blur:BitmapFilter = new BlurFilter(b,b,quality); //The BlurFilter object.

var filterArray:Array = new Array(blur); //To apply the filter we need an array of filters.

light.filters = filterArray; //Sets the filters array to the Light

/* Change alpha */

light.alpha = Math.random() * 0.6 + 0.1;

/* Scale */

light.scaleX = Math.round(((Math.random() * (1 - minimumScale)) + minimumScale) * 100) / 100;
light.scaleY = light.scaleX;

/* Add the lights */

addChild(light);

/* Store lights in an array to use it later */

lights.push(light);

/* Check for lights direction */

checkDirection();
}
}

/* Check direction */

private function checkDirection():void
{
for (var i:int = 0; i < lights.length; i++)
{
switch ( lightsDir )
{
case "up" :

lights[i].addEventListener(Event.ENTER_FRAME, moveUp);

break;
case "down" :

lights[i].addEventListener(Event.ENTER_FRAME, moveDown);

break;
case "right" :

lights[i].addEventListener(Event.ENTER_FRAME, moveRight);

break;
case "left" :

lights[i].addEventListener(Event.ENTER_FRAME, moveLeft);

break;
default :

trace("Something weird just happened!");
}
}
}

/* Move Up function */

private function moveUp(e:Event):void
{
e.target.x += e.target.xSpeed;
e.target.y-=e.target.ySpeed;

/* Reset light position, Y first, then X */

if (e.target.y + (e.target.height / 2) < 0)
{
e.target.y = areaH + (e.target.height / 2);
e.target.x=Math.floor(Math.random()*areaW);
}

if ((e.target.x + e.target.width / 2) < 0 || (e.target.x - e.target.width / 2) > areaW)
{
e.target.y = areaH + (e.target.height / 2);
e.target.x=Math.floor(Math.random()*areaW);
}
}

/* Move Down function */

private function moveDown(e:Event):void
{
e.target.x+=e.target.xSpeed;
e.target.y+=e.target.ySpeed;

/* Reset light position, Y first, then X */

if (e.target.y - (e.target.height / 2) > areaH)
{
e.target.y = 0 - (e.target.height / 2);
e.target.x=Math.floor(Math.random()*areaW);
}

if ((e.target.x + e.target.width / 2) < 0 || (e.target.x - e.target.width / 2) > areaW)
{
e.target.y = areaH + (e.target.height / 2);
e.target.x=Math.floor(Math.random()*areaW);
}
}

/* Move Right function */

private function moveRight(e:Event):void
{
e.target.x+=e.target.ySpeed;
e.target.y+=e.target.xSpeed;

/* Reset light position, Y first, then X */

if (e.target.y - (e.target.height / 2) > areaH || e.target.y + (e.target.height / 2) < 0)
{
e.target.x = 0 - (e.target.height / 2);
e.target.y = Math.floor(Math.random()*areaH);
}

if ((e.target.x - e.target.width / 2) > areaW)
{
e.target.x = 0 - (e.target.height / 2);
e.target.y = Math.floor(Math.random()*areaW);
}
}

/* Move Left function */

private function moveLeft(e:Event):void
{
e.target.x-=e.target.ySpeed;
e.target.y-=e.target.xSpeed;

/* Reset light position, Y first, then X */

if (e.target.y - (e.target.height / 2) > areaH || e.target.y + (e.target.height / 2) < 0)
{
e.target.x = areaW + (e.target.width / 2);
e.target.y=Math.floor(Math.random()*areaH);
}

if ((e.target.x + e.target.width / 2) < 0)
{
e.target.x = areaW + (e.target.width / 2);
e.target.y=Math.floor(Math.random()*areaW);
}
}
}
}




Обязательно после этого сохранить изменение в скрипте класса. Файл - Сохранить.
Или если хотите, то просто замените папку Classes на папку Classes из этого архива


Вложение: 4115784_classes.rar




Серия сообщений "Уроки Flash":
уроки в разных флешпрограммах, авторские уроки flash

Часть 1 - Делаем элементарные часики.Начинаем учиться созданию flash.
Часть 2 - Как правильно записать код флешки или видео в рамочку для кодов.
...
Часть 23 - Маска динамическим текстом. Урок для флеш. Action Script 2. Часть 3.
Часть 24 - Создание 3D карусели ( пояснения к уроку от Веры BAT)
Часть 25 - Работа по уроку «Создание эффекта Боке».


Серия сообщений "Флэшки друзей":
Часть 1 - Отдыхаем в прекрасном саду Японии!
Часть 2 - КРАСИВЫЕ ФЛЕШКИ / ТОРТЫ, СВЕЧИ
...
Часть 11 - Флеш поздравления с Днем Автомобилиста.
Часть 12 - Флеш открыточки "Пасхальные яйца".
Часть 13 - Работа по уроку «Создание эффекта Боке»
Часть 14 - Часики для ваших дневников.Много...
Часть 15 - Учим с детьми
Часть 16 - Часики Зимние

Серия сообщений "Уроки Adobe Flash Professional CS6":
Часть 1 - Урок размытого изображения во флеш
Часть 2 - Уроки Flash. Основы
...
Часть 15 - Видео-уроки Adobe Flash
Часть 16 - Уроки по флешкам
Часть 17 - Работа по уроку «Создание эффекта Боке»
Часть 18 - Вращающийся шлейф от курсора
Часть 19 - Кнопка-плеер в Adobe Flash.
...
Часть 31 - Урок.Эффект полосок на картинке в Adobe Flash.
Часть 32 - Урок.Эффект полосок на картинке в Adobe Flash.
Часть 33 - Adobe Flash CS6 & videokurs "Быстрый старт".


Понравилось: 4 пользователям