Ruch 3D przy użyciu ActionScript 1. Uruchom program Flash

Transkrypt

Ruch 3D przy użyciu ActionScript 1. Uruchom program Flash
Ruch 3D przy użyciu ActionScript
1.
2.
3.
4.
5.
6.
7.
8.
Uruchom program Flash Designer i utwórz nowy dokument
Wybierz Film > Opcje eksportu i ustaw wersję SWF na Flash Player 6
Ustaw rozmiar ramki na 300 x 300
Ustaw czas ramki na 0.05 sekundy
Wybierz narzędzie "Elipsa" i narysuj okrąg przytrzymując wciśnięty klawisz CTRL
Wybierz z menu "Obiekt" > "Przejście tonalne"
Wybierz z rozwijanej listy typ gradientu "Zwykły", a w dolnej rozwijanej liście "Centralny"
Kliknij na kolor dla środka i zmień go na dowolny kolor (to będzie kolor jaśniejszy), np.
#99FF66
9. Kliknij na kolor dla brzegu i zmień go na kolor ciemniejszy niż poprzedni (to jest kolorcień), np. #66CC66
10. Kliknij na przycisk "Zaawansowane" i zmień "Delta X" i "Delta Y" na wartości "-50" (jest to
przesunięcie środka rozchodzenia się gradientu)
11. Zatwierdź wypełnienie kuli gradientem klikając OK
12. Wybierz "Edycja" > "Zamień na Sprite (Movie Clip)", kula zostanie automatycznie nazwana
"Sprite2"
13. Wybierz "Obiekt" > "Właściwości wyświetlania", zaznacz opcję "Obiekt w ActionScript" i
zmień nazwę w polu "Nazwa obiektu" na "Kula", kliknij OK
14. Wybierz "Ramka" > "ActionScript" i wklej poniższy kod:
Angle++; // zwiększa kąt o 1 stopień w każdej ramce
rad = Angle / 20;
// dzieli kąt przez prędkość
// obliczanie wartości x i y kuli
// sin i cos przyjmują wartości pomiędzy -1 i 1
X = Math.sin(rad) * 100; // X: -100 do +100 pikseli w poziomie
Y = Math.cos(rad) * 30; // Y: -30 do +30 pikseli w pionie
// umieszcza kulą na pozycji x i y
// (120,120) to środek
Kula._x = 120 + X;
Kula._y = 120 + Y;
// przeskalowanie kuli na podstawie wartości y (oś pozioma)
// odwrotność y kiedy zwiększa się skala
// 100 to normalna wielkość
Kula._xscale = 100 + Y;
Kula._yscale = 100 + Y;
// stopniowanie jasności kuli na podstawie również wartości y
Kula._alpha = 75 + Y / 2;
Padający śnieg
1.
2.
3.
4.
Uruchom program Flash Designer i ustaw rozmiar animacji 400 x 300 (lub inny potrzebny).
Zmień czas trwania ramki na "Stop".
Dodaj nową ramkę, zmień ramkę "Frame 1" na matrycę - zaznacz opcję "Matryca"
Przejdź do ramki "Frame 1", zaznacz "Master Frame (1)" jako tło:
Tworzenie śniegu
1. Przejdź do ramki "Frame 1"
2. Narysuj elipsę około 16x16 pikseli, ustaw grubość linii na "Brak" ("Obiekt" > "Grubość
linii")
3. Wypełnij radialnym gradientem (kolor środkowy - biały, zewnętrzny kolor - "brak koloru") "Obiekt" > "Przejście tonalne" Centralny"
4. Przekonwertuj na sprite ("Edycja" > "Zamień na Sprite")
5. Zmień nazwę na "Snowflake" i zaznacz opcję "Obiekt w ActionScript" w menu "Obiekt" >
"Właściwości wyświetlania"
6. Przesuń klip filmowy "Snowflake" poza obszar ramki, aby nie był widoczny
Tworzenie tła
1. Przejdź do ramki "Master Frame (1)"
2. Narysuj prostokąt o wymiarach 400 x 300 i ustaw szerokość linii jak wcześniej na "Brak"
3. Wypełnij go pionowym (vertical) gradientem, ustaw górny kolor na ciemny niebieski, a
dolny kolor na jasny niebieski
4. Wyśrodkuj prostokąt na głównej ramce
Dodanie ActionScriptu:
Przejdź do ramki "Frame 1", wybierz z menu "Ramka" > "ActionScript" wklej poniższy kod:
maxsnowflakes = 100;
var snowflakes = new Array();
for(i=0;i<maxsnowflakes;i++)
{
snowflakes[i] = Snowflake.duplicateMovieClip("snowflake"+i,100+i);
// ustawianie w przypadkowym miejscu
snowflakes[i]._x = Stage.width*Math.random();
snowflakes[i]._y = Stage.height*Math.random();
snowflakes[i]._xscale = 40+Math.random()*60;
snowflakes[i]._yscale = snowflakes[i]._xscale;
}
snowflakes[i].yspeed = Math.random()*4+ 1;
snowflakes[i].increment = -0.025+Math.random()*0.05;
snowflakes[i].onEnterFrame = function() {
this.radians = this.increment + this.radians;
this._y = this.yspeed + this._y;
this._x = Math.sin(this.radians) + this._x;
if (this._y>Stage.height) {
this._y = 0-10;
this._x = 0-10+Math.random()*Stage.width;
}
}

Podobne dokumenty