Свойства на алфа и мащабни частици - Flash CS3
Сега, когато имаме нашия FlashR CS3 анимация на сцената с частици за система от частици, полирана малко, можем да се концентрираме върху добавянето на повече интерес и реализъм към нашата анимация. В последния урок ние добавихме известна случайност към нашите снежинки, използвайки Math.random (), за да промените количеството ефект на вятъра, който се прилага към всяка отделна снежинка. Нека добавим още по-голям интерес, като варираме размера и прозрачността на частицата на снежинката. В края на краищата, не всички снежинки са с еднакъв размер. Също така, променяйки прозрачността на някои люспи, това ще създаде илюзията, че някои от снежинките са по-далеч в снежната сцена. Така че нека се заемем.

Първо трябва да решим къде ще поставим този нов код. Ако го поставим вътре в кода на функцията за снеговалеж, размерът и прозрачността на графиката на снежинката ще се променят всеки път, когато Flash влезе в нов кадър. Това е така, защото функцията за снеговалеж е мениджър на събитията за слушателя на събитията ENTER_FRAME. Това няма да ни даде ефекта, който търсим. Не искаме снежинката да промени външния си вид, след като бъде изтеглена на сцената.

Втората ни опция е да добавим новия код към секцията, която създава снежинките и задава позициите X и Y. Тъй като този раздел от код се случва само веднъж за всяка снежинка, това е мястото за нашия нов код. Искаме прозрачността (или алфа) и размерът (или мащабът) на нашата снежинка да се определят само веднъж в момента на нейното "създаване".

Първият ред от нов код, който ще добавим, ще каже на Flash да преоразмери снежинката до произволен размер между 0 и 1. Стойността на 0 ще намали снежинката до нищо и стойността на 1 ще я запази на 100%. Ще използваме свойствата scaleX и scaleY, за да контролираме размера. Защо трябва да зададем скалата X и Y? Представете си, че сме задали само скалата на Х на 50%. Снежинката ни ще бъде половината от ширината на първоначалния размер и все още толкова висока, колкото беше първоначално. Вече нямаше да е хубава кръгла снежинка. Затова трябва да променим размера както на стойностите на скалата X, така и на Y.

_Snowflake.scaleX = Math.random ();
_Snowflake.scaleY = Math.random ();


Но все пак трябва да сме сигурни, че Flash преоразмерява равномерно снежинката и за стойностите на X и Y. Тъй като вече имаме написан код, стойностите X и Y е възможно да са две различни случайни числа. Искаме те да са едно и също случайно число. Можем да сме сигурни в това, като променим кода, така че той да задава скалата X и Y на едно и също произволно число.

_Snowflake.scaleX = _Snowflake.scaleY = Math.random ();

Втората ни задача е да променим прозрачността на нашата графика на снежинката. Ще направим това като зададем произволна стойност за алфа свойството.

_Snowflake.alpha = Math.random ();

Сега нека добавим този код в нашата програма и да тестваме филма си няколко пъти. Всеки път снежинката трябва да е с различен размер и непрозрачност.

Запазете вашата снежна сцена като SnowScene7.fla.

Copyright 2018 Adobe Systems Incorporated. Всички права запазени. Екран (и) на екрана с продукти на Adobe препечатани с разрешение от Adobe Systems Incorporated. Adobe, Photoshop, Photoshop Album, Photoshop Elements, Illustrator, InDesign, GoLive, Acrobat, Cue, Premiere Pro, Premiere Elements, Bridge, After Effects, InCopy, Dreamweaver, Flash, ActionScript, Fireworks, Contribute, Captivate, Flash Catalyst и Flash Paper е или са [a] регистрирана търговска марка (и) или търговска марка (и) на Adobe Systems Incorporated в Съединените щати и / или други страни.


Инструкции Видео: ДОКЛАД ИСКОННАЯ ФИЗИКА АЛЛАТРА. ВИДЕО-ВЕРСИЯ. ALLATRA SCIENCE (Април 2024).