Szerzıi rendszerek (Elızetes tananyag)
Dr. Juhász Ferenc 2010. január
Szerzıi rendszerek
Tartalomjegyzék
Tartalomjegyzék 1 2
Elıszó .................................................................................................................5 Bevezetés ............................................................................................................6 2.1 Az animációról............................................................................................7 2.2 Animáció a világhálón ................................................................................9 2.2.1 Reklám az interneten ........................................................................10 2.2.2 Játékok ..............................................................................................10 2.2.3 Szórakoztató, ismeretterjesztı animációk.........................................11 2.2.4 Teljes Flash-es honlapok...................................................................11 3 A Flash multimédia szerzıi rendszer ................................................................12 3.1 Vektorgrafika ............................................................................................12 3.2 A Flash, a Flash Player és az ActionScript rövid története .......................13 3.2.1 A Flash tulajdonosi története ............................................................13 3.2.2 A FlashPlayer rövid története ...........................................................14 3.2.3 Az ActionScript rövid története ........................................................15 3.3 A rajzfilmkészítés alapvetı fogalmai........................................................15 3.4 A Flash felhasználói felülete.....................................................................16 3.4.1 A színpad (Stage)..............................................................................19 3.4.2 Az idıvonal (Timeline).....................................................................20 3.4.3 Réteg (Layer) ....................................................................................21 3.4.4 Keret, kulcskeret, közteskeret, kocka................................................21 3.4.5 Jelenet (Scene) ..................................................................................22 3.4.6 Indítópult (Launcher bar)..................................................................22 3.4.7 Eszköztár (Tools), eszközsávok (Toolbars), .....................................22 3.4.8 Lebegı ablakok, panelek (Panels) ....................................................23 3.4.9 Szimbólumok (Symbol), könyvtár (Library) ....................................24 3.4.10 Filmintézı (Movie Explorer) ............................................................25 3.4.11 Ellenırzı kérdések............................................................................25 3.5 Alakzatok..................................................................................................26 3.5.1 Az eszköztár......................................................................................26 3.5.2 Ellenırzı kérdések............................................................................33 3.6 Szövegek...................................................................................................33 3.6.1 Ellenırzı kérdések............................................................................34 3.7 Szimbólumok, példányok .........................................................................34 3.7.1 Közös könyvtár .................................................................................37 3.7.2 Ellenırzı kérdések............................................................................37 3.8 Csoport......................................................................................................38 3.9 Elemek tulajdonságainak megváltoztatása................................................38 3.9.1 Takarási sorrend................................................................................39 3.9.2 Transzformáció (Transform).............................................................40 3.9.3 Regisztrációs pont áthelyezése átméretezéskor ................................41 2
Szerzıi rendszerek
Tartalomjegyzék
3.9.4 Igazítás (Align)................................................................................. 42 3.9.5 Csoportosítás és feloldása ................................................................ 43 3.9.6 Széttördelés, elszakítás (Break Apart).............................................. 43 3.9.7 Színek ............................................................................................... 43 3.9.8 Színminták........................................................................................ 45 3.9.9 Ellenırzı kérdések ........................................................................... 45 3.10 Animáció .................................................................................................. 45 3.10.1 Köztesmozgás (Motion Tween) ....................................................... 47 3.10.2 Mozgásvezérlı (Motion Guide) ....................................................... 48 3.10.3 Köztesváltozás (Shape Tween)......................................................... 49 3.10.4 Köztesváltozás befolyásolása ........................................................... 49 3.11 Maszk használata...................................................................................... 50 3.12 Interaktív mozik ....................................................................................... 51 3.12.1 Nyomógomb..................................................................................... 51 3.12.2 Moziklipek ....................................................................................... 52 3.12.3 Animáció moziklippé alakítása ........................................................ 52 3.13 Komponensek........................................................................................... 53 3.14 XML támogatás........................................................................................ 53 3.15 Tesztelés, mentés, publikálás ................................................................... 53 3.16 Hagymahéj tesztüzemmód ....................................................................... 54 3.17 ActionScript 2.0 (AS2)............................................................................. 54 3.17.1 Adattípusok ...................................................................................... 56 3.17.2 Változók ........................................................................................... 57 3.17.3 Operátorok........................................................................................ 58 3.17.4 Feltételes utasítás.............................................................................. 58 3.17.5 Vezérlı utasítások ............................................................................ 58 3.17.6 Függvények ...................................................................................... 59 3.17.7 Érvényességi kör (Scope) ................................................................. 60 3.17.8 Referencia készítése függvényhez.................................................... 61 3.17.9 Eseménykezelık............................................................................... 62 3.17.10 Eseménykezelı hozzáadása.......................................................... 62 3.17.11 Leszámolás ................................................................................... 63 3.18 ActionScript 3 (AS3)................................................................................ 63 3.18.1 Változók, értékek.............................................................................. 65 3.18.2 Alapértelmezett paraméterek használata függvényeknél.................. 66 3.18.3 A … azaz a „rest” paraméter függvényeknél. .................................. 67 3.18.4 DisplayObject osztály....................................................................... 67 3.18.5 A Sprite osztály ................................................................................ 68 3.18.6 Eseménykezelés ............................................................................... 68 3.18.7 Leszámlálás ...................................................................................... 68 4 Gyakorlatok...................................................................................................... 70 4.1 Rajzoljunk Napot...................................................................................... 70 4.2 Fogd és vidd ............................................................................................. 72
3
Szerzıi rendszerek
Tartalomjegyzék
4.3 Átalakuló szöveg ......................................................................................74 4.4 Aktív nyomógomb ....................................................................................74 4.5 URL ..........................................................................................................75 4.6 Animált gomb létrehozása ........................................................................76 4.7 Pásztázó fényforrás ...................................................................................78 4.8 Villanó logo ..............................................................................................78 4.9 Körök ........................................................................................................80 4.10 Golyók ......................................................................................................81 4.10.1 Megállítható és elindítható golyó......................................................81 4.10.2 Példa moziklip alkalmazására...........................................................83 4.10.3 Példa moziklipbe ágyazott moziklipre ..............................................84 4.11 Mezı .........................................................................................................86 4.12 Hóesés.......................................................................................................87 5 Irodalom............................................................................................................92
4
Szerzıi rendszerek
Elıszó
1 Elıszó A segédlet a Gábor Dénes Fıiskola azonos címő tantárgyának tananyagát tartalmazza. Célja a multimedia szerzıi rendszerek (Multimedia Authoring System), röviden szerzıi rendszerek témakörének és a velük készíthetı alkalmazások lehetıségeinek bemutatása. Támaszkodik a számítógépes grafikával kapcsolatos fogalmakra, feltételezi azok ismeretét. Mégis, ha a jobb megértés úgy kívánja, a tárgyalás során felmerülı fogalmak leglényegesebb vonatkozásait röviden összefoglaljuk. A jegyzet ismerteti az internetes animáció készítés és ily módon a szerzıi rendszerek egyik legfontosabb eszközét, a Flash fejlesztı rendszert. Az egyszerő animációk összeállításán túl megismertet a Flash nyelvének, az ActionScript nyelvnek a felhasználásával készíthetı bonyolult, interaktív animációk megvalósításával is. A szöveg a Flash CS3 lehetıségeit taglalja. A segédlet tartalmilag és formailag meg kíván felelni nemcsak a nappali, hanem a távoktatás követelményeinek is. Ezt a célt szolgálják a fejezetek végén lévı ellenırzı kérdések, továbbá a könnyebb elsajátítást elısegítı figyelmeztetı jelölések
Számítógép használható. Súlyponti rész. Aprólékos, figyelmes áttanulmányozást igénylı anyagrész. Kiegészítı ismeretek. Megoldandó írásos feladat.
A tananyaghoz tartozó elıadásvázlat, mintapéldák és egyéb oktatási segédanyagok a fıiskola honlapjáról letölthetık.
Szerzıi rendszerek
Bevezetés
2 Bevezetés A szerzıi rendszer egy olyan program, amely keretrendszerként lehetıvé teszi elıre elkészített elemek, úgy mint grafikák, képek, hangok, animációk interaktív multimédia alkalmazássá való összeállítását. Ha az elkészített alkalmazást interneten való terjesztésre szánják, akkor az a RIA (Rich Internet Application) kategóriába sorolható. A szerzıi rendszer készítıjének nem kell mély programozási ismeretekkel rendelkeznie, mindazonáltal az alapvetı elvekkel, az algoritmizálás fıbb gondolataival tisztában kell lennie. A szerzıi alkalmazás készítése, amit röviden „szerzés”-nek nevezhetünk, ily módon egy felgyorsított formája a programozásnak. Fölmerül a kérdés, vajon mi a különbség a multimédia programozás és a multimédia szerzés között. A multimédia programozás a multimédia elemek összeállításánál és az interaktivitás megszervezésénél alacsony szintő nyelveket (C, Java,…) használ, míg a multimédia szerzés magas szintő grafikusfelület tervezı eszközökkel és magas szintő szkriptekkel (ActionScript) operál. Elmondható, hogy a multimédia szerzés közelebb áll a multimédia anyag kitalálásához, a tartalom megtervezéséhez, míg a multimédia programozás a már kitalált tartalom megvalósításával foglalkozik fıleg. Az elkészített alkalmazások két fı csoportra oszthatók. Megkülönböztetünk idı alapú és nem idı alapú alkalmazásokat, amelyeket természetesen a nekik megfelelı keretrendszerrel lehet létrehozni. A nem idıalapú alkalmazások épülhetnek oldalakra vagy ikonokra. Felépítésük szerint lehetnek soros illetve hálós szervezésőek a szerint, hogy a tartalmakat hordozó oldalak sorban egymás után követhetik csak egymást, avagy a nézı bizonyos korlátok között, de szabadon döntheti el a felkínált tartalmak bejárásának sorrendjét.
6
Szerzıi rendszerek
Bevezetés
Az idı alapú szerzıi rendszerrel készült alkalmazásokban, amelyeket animációknak nevezhetünk, a multimédia elemek egy idıskálán elhelyezkedı keretsorozatba rendezve jelennek meg. Az ilyen típusú alkalmazások között napjainkban a Flash az egyik legelterjedtebb. Korunkban nem képzelhetı el színvonalas kereskedelem, szórakoztatás, ismeretterjesztés az interneten Flash animáció nélkül. Bizonyos statisztikák szerint napjainkban a böngészık 97 százalékán megtekinthetık a Flash segítségével készített animációk.
2.1 Az animációról Az idıben lejátszódó folyamatok pontos ábrázolása régi vágya az emberiségnek. Már a barlangrajzoknál is megfigyelhetı, hogy közülük néhány egy egész történetet mesél el (1.ábra).
7
Szerzıi rendszerek
Bevezetés
1. ábra Shiva istennı több karral való ábrázolása nem csak különbözı helyzetekben való megjelenítésként értelmezhetı, hanem tekinthetı egy olyan 2D vagy 3D animációnak is, ahol a kelleténél több kar a mozgás megjelenítését szolgálja (2., 3. ábra).
8
Szerzıi rendszerek
Bevezetés
2. ábra
3. ábra
A nyugati képzımővészet a film megjelenéséig nem tudott mit kezdeni az idıbeliséggel. Mind a szobrászat, mind a festészet pillanatfelvételként ábrázolja a világot. Ezért is volt olyan nagy szenzáció a mozgókép megjelenése. A film kb. százéves története nagyon sok érdekes mozzanatot tartalmaz. Számos technikai és nem kevesebb mővészi, tartalmi újítás járult hozzá a mővészet ezen ágának fejlıdéséhez. A mozgókép az ezredforduló elıtt filmszínházakban és a televízó képernyıjén tudott csak megjelenni.
2.2
Animáció a világhálón
Az 1990-es években kezdett az internet, mint információ közvetítı közeg ismertté válni. Miután 1991-ben a National Science Foundation feloldotta a hálózat üzleti használatának tilalmát, majd 1995-ben vissza is vonult a területrıl, alapvetı változások indultak el az internet életében. A hálózat évenkénti növekedése meghaladta a 300 százalékot.
9
Szerzıi rendszerek
Bevezetés
2.2.1 Reklám az interneten Az üzleti világ felfigyelt a sok látogatót vonzó keresıkre, majd késıbb a szintén egyre népszerőbb portálokra. A folyamatok talán legfontosabb mozgatójának az internetes kereskedelem bizonyult, amelynek legfontosabb szempontja a vásárlóerı manipulálása az eladások számának növelése érdekében. 1995-ben a Wired Internetes magazin „feltalálta” a hirdetési szalagot (banner). A felhasználók számának drasztikus növekedése vonzó hirdetési felületté tette a legforgalmasabb honlapokat. Az internetes reklámok napjainkban majd minden fontosabb honlapon megtalálhatók. Az internetes reklám elızményei a XIX. századig nyúlnak vissza. A kor mutatványosai, kikiáltói - leginkább Amerikában - fontos szerepet játszottak a termékek népszerősítésében. A XX. században szerepüket a televíziós reklám és a termékbemutatók vették át. Ezen mozgalmas látványosságok megfelelıje az interneten az animációs reklám. Számos hátrányos tulajdonsága ellenére az élet nem képzelhetı el reklám nélkül. Fıbb felhasználási területei: cégreklám termékreklám közérdekő reklám A fı különbség a hagyományos és az internetes reklám között abban rejlik, hogy az utóbbiban jóval nagyobb szerep jut a közönségnek, az esetek többségében ugyanis ı dönt arról, hogy egy bizonyos hirdetést meg óhajt-e tekinteni vagy sem. 2.2.2 Játékok Az internet elterjedésével egyre több tartalomszolgáltató ismerte fel az új technológia adta lehetıségeket. Az animációk weben való megjelentetése több szempontból is elınyösnek bizonyult. A közvetlen reklámokon túl megjelentek az olyan játékok, amelyek 10
Szerzıi rendszerek
Bevezetés
áttételesen, a nézı szimpátiájának felkeltésével igyekeznek növelni a honlapok látogatottságát és ily módon javítani az üzletmeneten. 2.2.3 Szórakoztató, ismeretterjesztı animációk Nem csekély a „non-profit” animációk száma sem. Számos játék csupán a nézı szórakoztatását szolgálja. Újabban pedig megjelentek az ismereteket átadni szándékozó, oktató célzatú animációk is. Ezek között megtalálhatók az interaktív animációk éppen úgy, mint a fıleg csak megtekintést szolgáló Flashbook-ok. 2.2.4 Teljes Flash-es honlapok Az utóbbi idıben vált elfogadottá, hogy bizonyos tevékenységekhez kapcsolódó honlapok szinte kötelezıen teljes Flash-es honlapok. Ezek a tevékenységek mővészettel kapcsolatosak, pl. fotósok, grafikusok, szobrászok, táncmővészek, iparmővészek honlapjai sorolhatók ebbe a körbe. Általános megfigyelés, hogy teljes Flash-es honlap esetén elınyösebb az ilyen vállalkozás üzletmenete.
11
Szerzıi rendszerek
Flash
3 A Flash multimédia szerzıi rendszer A Flash grafikus alkalmazás kiváló lehetıséget kínál ahhoz, hogy grafikák és animációk készítésével látványossá és egyszersmind interaktívvá tegyük honlapunkat. Erıssége a vektorgrafikára alapozott animáció, de bittérképes grafikát is tud kezelni. Az animációk készítésénél interaktív elemek is rendelkezésünkre állnak. Minthogy a Flash mozikat egy böngészıbe integrált bıvítıprogram (plug-in) segítségével lehet megtekinteni, ezért böngészıtıl, operációs rendszertıl függetlenül lejátszhatók. Mindezeket figyelembe véve a Flash a világhálón jelenlévı animációk egyik legfontosabb megjelenési formája.
3.1 Vektorgrafika Az interneten való megjelenésnél a legfontosabb figyelembe veendı szempont a sávszélesség, ami még napjainkban is, sok esetben nem elegendıen nagy. A bittérképes grafika egy nagy kép esetén nagymérető fájlt eredményez, mivel a képeket egy raszteren elhelyezkedı pontok, azaz pixelek segítségével jeleníti meg. Ezt néha raszter grafikának is nevezik. Ezzel szemben a vektor grafika, más néven objektum orientált grafika olyan hardware illetve szoftver hátteret feltételez, amelyik geometriai formulákat használ a képek megjelenítésére. Mivel a rajzot utasítások segítségével tárolja, ezért a kép nagyításakor nem növekszik meg a fájl mérete, továbbá a kép részletgazdagsága sem romlik el a nagyítással. Azokat a programokat, amelyek vektor grafikus képeket is képesek kezelni, angol nyelvterületen „draw” programnak, míg a csak bittérképes képeket kezelı programokat „paint” programnak nevezik. Az alábbi képek egy felnagyított, bittérképes grafikával illetve egy felnagyított vektoros grafikával ábrázolt gömböt mutatnak.
12
Szerzıi rendszerek
Flash
4. ábra
5. ábra
Ezen szempontokat figyelembe véve logikus, hogy a Flash a vektorgrafikát támogatja elsısorban, de emellett lehetıvé teszi bittérképes grafikák importálását is.
3.2 A Flash, a Flash Player és az ActionScript rövid története Az animált gif fájlok, elég nagy méretük ellenére is, nem túl sokoldalú felhasználást tesznek csak lehetıvé. A Flash megjelenését az ezen fájlok vektorgrafikus animációval való helyettesítése tette szükségessé. 3.2.1 A Flash tulajdonosi története A FutureWave Software cég 1995-ben egy kis vektorgrafikus rajzoló programot adott ki SmartSketch néven, amely nagy sikert ért el a piacon. A cég ezt egészítette ki keretenkénti animációval, amelyet 1996 májusában megjelentettek FutureSplash Animator elnevezéssel. Az alkalmazás konkurenciát jelentett a Macromedia ceg 1995-ben megjelent Shockwave nevő programjának. A Macromedia Shockwave lehetıvé tette a cég egy másik alkalmazása, a Director alkalmazás által készített mozik világhálón való megjelenítését. Az így exportált mozik már egy ingyenes, böngészıbe integrált bıvítıprogram segítségével voltak lejátszhatók. A konkurenciát kiküszöbölendı a Macromedia cég még 1996 decemberében megvásárolta a FutureSplash Animator-t, és Macomedia Flash 1.0 név alatt forgalmazta (Future+Splash=Flash).
13
Szerzıi rendszerek
Flash
Évek során számos kiadása született a Flash-nek, az utolsó, Macromedia által kiadott verzió a Flash 8. 2005-ben a szoftver az Adobe tulajdonába került. Azóta az újabb kiadások az Adobe Creative Suit programcsomag részeként kerülnek forgalmazásra. Érdemes megfigyelni az egymást követı kiadások méretének növekedését. Flash 1 [2 Mb] 1996 Macromedia Flash 2 [3.72 MB] Macromedia Flash 3 [8.01 MB] Macromedia Flash 4 [9.94 MB] Macromedia Flash 5 [18.46 MB] 2000 Macromedia Flash 6 (MX) [46.09 MB] Macromedia Flash 7 (MX 2004 Pro) [83.54 MB] 2003 Macromedia Flash 8 (Professional) [107.63 MB] 2005 Adobe Flash 9 (CS3) [403 MB] 2006 Adobe Flash 10 (CS4) [888 MB] 3.2.2 A FlashPlayer rövid története A mozik megtekintését szolgáló böngészıbe épülı bıvítı programok magával a Flash fejlesztırendszerrel párhuzamosan fejlıdnek. Minthogy a fejlesztésnél különbözı kiadások elemeit is lehet használni, az animációk elkészültekor, az úgy nevezett publikálásnál kell csak figyelembe venni a lejátszáshoz használt Flash Player kiadását. Általában elmondható, hogy a késıbbi lejátszók boldogulnak a korábbi eszközökkel készült animációk lejátszásával. Macromedia Flash Player 2 Macromedia Flash Player 3 Macromedia Flash Player 4 (1999. május) Macromedia Flash Player 5 (2000. augusztus) Macromedia Flash Player 6 (2002 március) Macromedia Flash Player 7 (2003. szeptember) Macromedia Flash Player 8 (2005. augusztus) 14
Szerzıi rendszerek
Flash
Adobe Flash Player 9 (2008. április) Adobe Flash Player 10 RC 2 (2008. szeptember) 3.2.3 Az ActionScript rövid története ActionScript elemei a Flash 4-ben kezdtek egy nyelvvé összeállni. ActionScript 1.0 (2000–2003) 2000. szeptemberében a Flash 5-ben jelent meg az ActionScript 1.0. Az nyelv elnevezése is ekkor született. Megfigyelhetı a JavaScript erıs hatása. A nyelv legfontosabb tulajdonságai: • lazán típusos • prototype alapú öröklés ActionScript 2.0 (2003–2006) 2003. szeptemberében a Flash 7-ban (Flash MX 2004) jelent meg. • típus ellenırzés fordítási idıben • osztály alapú öröklés és szintaktika (C++, Java mintájára) ActionScript 3.0 (2006–) A nyelv 2006. júniusában jelent meg a Flash 9-ben (Adobe Flash CS3) • virtual machine
3.3 A rajzfilmkészítés alapvetı fogalmai A Flash mozik hasonlóan a filmekhez idıben egymás után lejátszott filmkockákból (frame) épülnek fel. Ha meg szeretnénk érteni a Flash filmek felépítését, hasznos, ha a rajzfilmet vesszük alapul. A rajzfilmek készítése az irodalmi forgatókönyv (script) elkészítésével kezdıdik. Ebben leírják a történetet, párbeszédeket, meghatározzák a szereplıket, a hátteret. Ezt követi a képes forgatókönyv (storyboard) elkészítése, amely a leendı film néhány egymás utáni képbe sőrített rövid leírása. A
15
Szerzıi rendszerek
Flash
storyboard a Walt Disney Studio által kitalált, a képregényhez (comics) hasonló megjelenítési forma.
6. ábra Képes forgatókönyv A mővészeti vezetı megrajzolja a figurákat, a hátteret és a filmben elıforduló fontosabb tárgyakat. A storyboard tartalmazza a film képi világának, hangi világának leírását, ezekkel kapcsolatos utasításokat, valamint az idızítést (timing). A storyboard alapján a grafikai tervezık és animátorok részletekbe menıen megtervezik a filmet, amelyet aztán a kulcsrajzolók tisztáznak le. A mozgást nagyvonalakban leíró kulcskockákat a fázisrajzolók sokasága „sőríti be” a folyamatos mozgás megjelenítéséhez szükséges további kockákkal. Ezzel párhuzamosan háttérkészítıi, zeneszerzıi, színészi tevékenységek is zajlanak a filmmel kapcsolatban, amelyek a végsı folyamatnál, a vágásnál találkoznak. Ekkor nyeri el a film a végsı formáját.
3.4 A Flash felhasználói felülete A Flash szerzıi rendszer egy rajzoló program és egy mozi szerkesztı egyben. Rajzoló funkciói nagyban hasonlítanak egy szokásos rajzoló program megfelelı funkcióira. Új fájl készítésekor választhatunk, hogy programozási nyelvnek az ActionScript 2.0-t (AS2), vagy az újabb ActionScript 3.0-t (AS3) 16
Szerzıi rendszerek
Flash
kívánjuk használni. A választás alapvetıen befolyásolja a fejlesztést, mégis mód van a nyelv késıbb történı megváltoztatására. Ilyenkor az ebbıl eredı módosításokat nekünk kell megtenni.
7. ábra Induló képernyı Az új dokumentum elkészítése után illetve szerkesztéskor a következı ablak áll a rendelkezésünkre.
17
Szerzıi rendszerek
Flash
8. ábra A Flash felhasználói felülete A program legördülı menüvel rendelkezik. A munka megkönnyítését panelek sora segíti. A panelek segítségével elérhetı funkciók legtöbbje a legördülı menübıl is elérhetı. A munkát ezen kívül a jobb egérgombbal való kattintásra megjelenı helyi menük teszik könnyebbé. A menüpontokhoz rendelt billentyőkombinációkat az Edit/Keyboard Shortcuts menüpont segítségével testre szabhatjuk. Valahányszor elindítjuk a Flash alkalmazást, az létrehoz egy fla kiterjesztéső új forrásfájlt. A munka során a Control/Test Movie menüparancs felhasználásával tesztelhetjük, illetve elkészültekor a File/Publish menüparancs segítségével publikálhatjuk az általunk készített animációt. Mindkét esetben a forrásfájlt tartalmazó mappában létrejön egy, a forrásfájl nevével megegyezı nevő és swf kiterjesztéső állomány. Ezt a fájlt, azaz munkánk eredményét, a böngészıbe integrált Flash Player segítségével lehet megtekinteni.
18
Szerzıi rendszerek
Flash
Publikálás esetén ezen kívül még egy olyan html fájlt is kapunk, amely az swf fájl honlapba való beágyazásához ad mintát. A Flash által használt kiterjesztések • .fla forrás fájl • .swf (ShockWave Flash) • .as (ActionScript) • .flv (Flash Video) Mielıtt hozzákezdünk a mozi elkészítéséhez, célszerő a mozi néhány alapvetı paraméterét beállítani. A Modify/Movie menüparancs hatására megjelenı Movie Properties párbeszédablakban beállíthatjuk a másodpercenként lejátszott filmkockák számát (Frame Rate). Az alapértelmezés szerinti 12 általában elegendı, azonban bizonyos mozgások megjelenítéséhez szükség lehet magasabb értékre, amely legfeljebb 120 lehet. Ugyanitt lehet beállítani a háttér színét (Background Color) valamint a színpad méreteit szélesség x magasság alakban (Dimensions: Width x Height), amelyekre a minimum18 maximum 2880 képpont (Pixel) korlátok érvényesek. A méretek mértékegysége (pl. Pixel) a Ruler Units mezıben válaszható ki.
9. ábra Tulajdonságok panel A képernyı közepén található a színpad (Stage), fölötte az idıvonal (Timeline), alatta az indítópult (Launcher bar), amelyik a fontos ablakok gyors megnyitását szolgálja. 3.4.1 A színpad (Stage) Az egyedi filmkockák létrehozása, szerkesztése a mozik elızetes megtekintése a színpadon történik. A színpad használatát hivatott 19
Szerzıi rendszerek
Flash
megkönnyíteni a View/Rulers, View/Grid/ShowGrid menüpont, amelyek a vonalzó illetve a rácsháló megjelenítésérıl rendelkeznek. 3.4.2 Az idıvonal (Timeline) A színpad felett látható vízszintes szalag (ablak) az idıvonal. Ez, mint egy filmszalag mutatja a mozi kockáit, rétegenként. A piros függıleges vonal jelzi a lejátszó fejet, azaz az aktuális kockát, amit szerkeszthetünk a színpadon.
A rajzelemeket több rétegben (Layer) elosztva helyezhetjük el a filmkockán. A rétegek sorokként jelennek meg az idıvonalon. A rétegek sorrendje vonszolással megváltoztatható, a legfelsı sor a legfelsı réteget mutatja. A réteg sorának bal oldalán található vezérlık segítségével beállíthatjuk, hogy a réteg rejtett/nemrejtett, zárolt/nem zárolt, illetve rendelkezhetünk a rétegben lévı objektumok részletes/kivonatos megjelenítésérıl. A rétegek átnevezhetık, elnevezésükkor, az animáció könnyő kezelhetıségének érdekében, célszerő kifejezı neveket használni. A mozi hosszát újabb kockák hozzáadásával növelhetjük. A kulcskockák olyan kitüntetett kockák, amelyek vezérlik az átmeneteket és az eseményeket. A kulcskockákat fekete pont jelöli. Az idıvonalon ábrázolt kockák sőrőségét az idıvonal jobb felsı sarkában kattintva kinyíló menü segítségével szabályozhatjuk. Az idıvonalat vonszolással áthelyezhetjük a képernyı különbözı pontjaira. Kockák és rétegek csoportos kijelölésére a Windowsban szokásos „kattintás majd Shift+kattintás” (egymás utáni elemek kiválasztása) illetve a „Control+kattintás” (hozzávétel a kijelöltekhez) kijelölések is használhatók. Az éppen szerkesztett mozit megtekinthetjük szerkesztı környezetben is a Control/Play menüparanccsal. A Window/Toolbars/Controller
20
Szerzıi rendszerek
Flash
panel kinyitása után a mozi lejátszását a panel megfelelı gombjaival szabályozhatjuk. 3.4.3 Réteg (Layer) A rajzfilmek készítıi a változó és a minden kockán megjelenı állandó elemeket külön fóliára rajzolták, így a fóliák használatával nem kellett kockáról kockára megrajzolni az azonos elemeket. Az így kialakított rétegek a takarások segítségével hozzájárultak a térbeliség illúziójának keltéséhez is. A Flash is használ rétegeket, amelyek úgy képzelhetık, mint egymásra helyezett átlátszó fóliák, amelyekre különbözı elemeket helyezhetünk. A rétegek számának csak a memória mérete szab határt, számuk szaporítása nem növeli a végsı fájl méretét. A rétegeket el lehet rejteni, sorrendjüket meg lehet változtatni, használatukkal a szerkesztési mőveletek és maga a film felépítése is áttekinthetıbbé válik. 3.4.4 Keret, kulcskeret, közteskeret, kocka A kulcskockák elkészítése alkotó jellegő munka. A Flash az összekötı kockák gépies megrajzolása alól mentesíti az animáció készítıjét. A kocka egy-egy rétegbe esı részét keretnek nevezzük. Tehát a kocka az egymás fölött elhelyezkedı keretek együttese. Keretek fajtái: • kulcskeret (szürke alapon fekete gombóc) • üres kulcskeret (fehér alapon üres karika) • közteskeret (szürke alap) • üres közteskeret (fehér alap) Az animáció szerkesztıje által készített változtatások mindig kulcskeretbe kerülnek. A kulcskeretet szürke alapon fekete gombóc jelöli az idıvonalon.
21
Szerzıi rendszerek
Flash
Az egyforma keretekbıl álló keretsorozat végét egy üres télalap jelöli az idıvonalon. Ha elhelyezünk valamit egy üres kulcskeretben, akkor az (nem-üres) kulcskeretté változik. Ha egy közteskeretbe próbálunk meg elhelyezni valamit, akkor az az ıt megelızı utolsó kulcskeretbe kerül. Mindig van aktuális keret, amely az aktuális réteg és a lejátszófej metszéseként ismerhetı fel. minthogy a kulcskockák és egyéb rendelkezések alapján képes összeállítani az animációt. 3.4.5 Jelenet (Scene) A rajzfilmek jelenetekbıl állnak. Hasonlóan, a Flash film is jelenetekre (Scene) tagozódhat. A filmkockák jelenetté illetve mozivá való összeállítása az idıvonal segítségével történik. 3.4.6 Indítópult (Launcher bar) Az indítópult az alkalmazás alsó részén húzódó sáv. A sáv jobb szélén található ikonok az Info panel, Mixer panel, Character panel, Instance panel, Movie Explorer ablak, Actions panel, Library ablak gyors megnyitását szolgálja. 3.4.7 Eszköztár (Tools), eszközsávok (Toolbars), A Tools ablak a szerkesztéshez felhasználható eszközöket és beállításaikat tartalmazza. Megjelenítésérıl a Window/Tools kapcsolóval rendelkezhetünk. A Window/Toolbars/Main kapcsoló a szokásosan a menüsor alatt elhelyezkedı eszközsor megjelenítésérıl rendelkezik.
22
Szerzıi rendszerek
Flash
3.4.8 Lebegı ablakok, panelek (Panels) A Window menüpontban található alpontok feladata a munkánkat segítı ablakok megjelenítése (10. ábra). A „lebegés” arra utal, hogy az ilyen ablak nem-modális, azaz állandóan kinyitva tartható és mindig az aktuális elem megfelelı tulajdonságát mutatja.
10. ábra Panelok, eszközsávok, segédeszközök megjelenítése
23
Szerzıi rendszerek
Flash
A Window/Actions hatására megnyíló ablak az ActionScript kódokat, a Window/Library menüpont által kinyíló ablak a könyvtár (Library) tartalmát jeleníti meg mindaddig, ameddig be nem zárjuk. A Window/Panel Sets/Default Layout menüpont az alkalmazás ablakából „kicsúszott” ablakok visszahozását szolgálja olyan módon, hogy egy kezdeti állapotot állít vissza. A Window/Panels menüpont lebegı panelek egész sorát ajánlja fel, hogy megkönnyítse a munkánkat (9. ábra). A lebegı panel egy lebegı ablak füleként jelenik meg, állandóan kinyitva tartható és mindig az aktuális elem megfelelı tulajdonságát mutatja. A panelok kiválasztását lehetıvé tevı ablakon látható vízszintes vonalak a panelok csoportosítását jelzik. 3.4.9 Szimbólumok (Symbol), könyvtár (Library) A szimbólumok olyan elemek, amelyek többször is felhasználhatók a moziban. A Window/Library menüpont hatására megnyíló Könyvtár (Library) ablak szimbólumosztályokat tartalmaz, a szimbólumosztályokból színpadra való vonszolással szimbólumpéldányokat készíthetünk. A szimbólum kifejezés a könyvtárban mindig szimbólumosztályt, a színpadon mindig szimbólumpéldányt jelent. Egy szimbólumosztály példánya nem csak a mozi színpadán, hanem egy másik szimbólumosztály színpadán is megjelenhet. Szimbólumosztály létrehozása 1. Insert/Convert to Symbol menüparancs a színpadon kijelölt elembıl készít szimbólumosztályt. Ilyenkor a kijelölt elem automatikusan az így elkészített szimbólumosztály példányává válik. 2. Az Insert/New Symbol menüparancs úgy nevezett szimbólumszerkesztı üzemmódba visz, ami a szimbólum saját színpadán, saját idıvonalán való szerkesztést jelenti. Ilyenkor a mozi ablakának idıvonal feletti sávjában a Scene1 fül mellet megjelenik 24
Szerzıi rendszerek
Flash
szimbólumunk füle is. A mozi szerkesztéséhez való visszatérést a Scene1 fülre való kattintással tudjuk elérni. A többszöri felhasználás mellett a mőködés, azaz az elem viselkedése a másik indok, amiért valamely elembıl szimbólumot kell készíteni. A szimbólumok viselkedésük szerint lehetnek • Grafikák (nem figyelhet eseményeket) • Gombok (gomb eseményeket figyelhet) • Moziklipek (moziklip eseményeket figyelhet) A szimbólumok használata csökkenti a fájl méretét, hiszen függetlenül attól, hogy hány példányban jelenik meg, csak egyszer tárolódik a fájlban. Ha megváltoztatjuk a szimbólum valamely tulajdonságát, valamennyi példányának megváltozik ez a tulajdonsága. Ha viszont egy példány tulajdonságát változtatjuk meg, úgy ez nem vonatkozik a többi példányra. A szimbólumok fontos szerepet játszanak a mozik interaktívvá tételében. A könyvtárban importált grafikákat, hang és mozi fájlokat is tárolhatunk. A Window/Panels/Instance panelon kizárólag a MovieClip típusú szimbólumpéldányoknak a név adható. 3.4.10 Filmintézı (Movie Explorer) A filmintézı (Window/Movie Explorer) lehetıvé teszi a mozi elemeinek vizuális áttekintését. Nagyban megkönnyíti a bonyolult filmekben való eligazodást. Segítségével a film objektumainak gyors megtalálása, módosítása is könnyen megvalósítható. 3.4.11 Ellenırzı kérdések 1. Miben különbözik a kulcskeret a kerettıl? 2. Számít-e a rétegek sorrendje a mozi végsı megjelenése szempontjából? 3. Növeli-e a fájlok méretét a szimbólumok használata?
25
Szerzıi rendszerek
Flash
4. Mit nevezünk idıvonalnak? 5. Ha a szimbólumnak egy tulajdonságát megváltoztatjuk, vajon megváltozik-e ez a tulajdonság az összes példánynál? 6. Mi a filmintézı feladata? 7. Hány réteget tartalmazhat egy mozi?
3.5 Alakzatok A Flash lehetıvé teszi pusztán grafikák készítését is, azonban az animációk készítésénél sem nélkülözhetjük a grafikus eszközök által nyújtott lehetıségeket. A kijelöléskor raszteresre változó elemeket alakzatoknak nevezzük. Ezek az eszköztárnak a szöveg eszköztıl különbözı eszközeinek a felhasználásával készülnek. 3.5.1 Az eszköztár Az eszköztár (Tools) ablak négy részre tagolódik. Nevét a legfelsı Tools résztıl kapta. A rajzelemek elkészítéséhez szükséges eszközöket, továbbá a mőködésüket szabályozó beállításokat jeleníti meg. A legfelsı Tools részben maguk az eszközök kaptak helyet. A legalsó, Options rész az éppen kiválasztott eszköznek megfelelı beállítási lehetıségeket mutatja. Az ablak View részében található eszközök a megtekintést szolgálják A Colors rész segítségével a határvonal (Stroke) és a kitöltés (Fill) színének beállítását végezhetjük el. A fehér és fekete négyzettel az alapértelmezett színekhez térhetünk vissza. A piros vonallal áthúzott négyzet a szín hiányát jelenti. A nyilakban végzıdı ív a háttér és az elıtér színének felcserélését végzi. A Colors részben beállított értékek az éppen kiválasztott vagy az ezek után létrehozott objektumok jellemzıit határozzák meg. 26
Szerzıi rendszerek
Flash
Az animáció szerkesztıje úgy tudja a legkönnyebben tagolni tevékenységét, ha az egymás utáni szerkesztési mőveleteket a nyíl eszközre való váltással fejezi be. kapcsolás egy- illetve kétoszlopos megjelenés között Kijelölıeszközök Nyíl (Arrow): kijelölés Fehér nyíl (Subselect): elem részeinek kiválasztása Szabad alakító (Free Transform) Lasszó (Lasso): kijelölés szabadon Rajzolóeszközök Toll (Pen): görbe pontokra illesztéssel Szöveg (Text): szöveg Vonal (Line): egyenes vonal Téglalalp (Rectangle): téglalap, ellipszis (négyzet, kör +Shift) Ceruza (Pencil): görbe vonal Ecset (Brush): kitöltés görbe vonalként Színezıeszközök Tintásüveg (Ink Bottle): határ színezése Festékesvödör (Paint Bucket): kitöltés színezése Pipetta (Dropper): színminta vétele Radír (Eraser). Radír Navigációs eszközök Kéz (Hand) Nagyító (Zoom) Beállítások terület Határszín (Stroke color) Kitöltıszín (Fill color)
10. ábra Eszköztár (Tools) 3.5.1.1 A nyíl A nyíl eszköz segítségével kijelölés üzemmódba léphetünk.
27
Szerzıi rendszerek
Flash
Ha egy belsı résszel rendelkezı alakzat belsı részére kattintunk, úgy kijelöljük ezen alakzat belsı részét. A kettıs kattintás mind a belsı részt, mind a határvonalat kijelöli. Ha egy belsı rész nélküli alakzatra kattintunk, akkor az éppen érintett vonaldarab válik kijelöltté. A kettıs kattintás ebben az esetben a teljes, esetleg több darabból álló vonal kijelölését jelenti. Az alakzat bittérképes grafikaként viselkedik, azaz, ha nem az egész alakzatot jelöljük ki, úgy a mőveletek csak a kijelölt részre fognak vonatkozni. A mágnes (Snap to Objects) opció az alakzatok egymáshoz való illesztését igyekszik megkönnyíteni. Az éppen végzett tevékenységtıl függ, hogy be- illetve kikapcsolása elınyösebb-e. A mágnes üzemmódot választva alakzatainkat pontosan illeszthetjük egymáshoz. Ha egy új alakzat közel kerül egy már létezıhöz az illeszkedési pontot egy kis kör jelöli. Alakzatok áthelyezésénél a határ bizonyos pontjait megragadva szintén megjelenik a kis kör. Helyzete attól függ, hogy mely pontjánál fogtuk meg az alakzatot. Ez legtöbbször a regisztrációs pont, de lehet a határ megfelelı darabjának széle vagy középpontja. Ha a kiválasztott alakzatot egy másikhoz közelítjük, akkor alakzatunk a kis körrel jelölt pontjánál fog illeszkedni a másikhoz. A simítás (Smooth), egyenesítés (Straighten) üzemmódokat az alakzat kiválasztása után lehet érvényesíteni. A kijelölt elemeken többféle átalakítást is elvégezhetünk mindaddig, ameddig meg nem szőntetjük a kijelölést, úgymond le nem tesszük az eleme(ke)t. A nyíl eszköz lehetıvé teszi alakzatok alakjának megváltoztatását. Az alakzat kijelölése nélkül az alakzat határának egy pontját vonszolva az alakzat formájának folytonos deformációját idézhetjük elı. Ha eközben a Ctrl gombot lenyomva tartjuk, a deformáció nem lesz folytonos, a vonszolt pontnál a határ szögletessé válik.
28
Szerzıi rendszerek
Flash
Az kijelölt határ illetve kitöltés színét a Window/Properties panelon, látjuk illetve adhatjuk meg. Határ esetén az aktuális vonal stílusát, vastagságát szintén a Window/Properties panelon állíthatjuk be. Egy másik módszer a színek megváltoztatására az alább ismertetendı Tintásüveg és Festékesvödör eszközöket használja. Ilyenkor elıbb állítjuk be az alkalmazandó színeket és utóbb jelöljük meg az átszínezendı elemeket. A színek részletes befolyásolása a Window/Color panelon történhet. 3.5.1.2 Fehér nyíl (Subselect) Megrajzolt vonal módosításához használjuk a fehér nyíl (Subselect) eszközt. Ha ekkor egy sarokpontra kattintunk, akkor az egy üres négyzetté, míg a hajlítópont egy üres körré változik. Ilyenkor áthelyezésre az egéren kívül használhatók a billentyőzet nyíl gombjai is. Csoportos kijelölés a Shift billentyő lenyomása mellett lehetséges. Hajlítópontra kattintva, láthatóvá válnak a saját illetve a szomszédos hajlítópontokhoz tartozó érintıirány-pontok is. Ezek áthelyezésével átalakíthatjuk a görbedarabok illeszkedését. Sarokpont hajlásponttá alakítása az Alt billentyő lenyomása mellett a pontnak az egérrel való vonszolásával lehetséges. 3.5.1.3 Szabad alakító (Free Transform) Az eszközzel az éppen kijelölt elemet tudjuk transzformálni grafikus megjelenéső szabályozók segítségével. Az ilyenkor megjelenı kis karika a transzformáció középpontját, azaz azt a pontot jelöli, amelyik a transzformáció során helyben marad. 3.5.1.4 Lasszó (Lasso): kijelölés szabadon A leggyakrabban használt téglalap segítségével történı kijelölés a nyíl eszköz használatával történik. Lehetıség van azonban tetszıleges alakú kijelölı alakzat használatára is, amit a Lasszó eszköz biztosít. 3.5.1.5 A toll (Pen) A toll eszközzel a színtéren egymás után elhelyezett úgy nevezett talppontokat köthetünk össze. A talppont két féle lehet: sarokpont 29
Szerzıi rendszerek
Flash
illetve hajláspont. Egy kattintással egy sarokpontot helyezhetünk el a színpadon. Két sarokpontot egyenes szakasz köt össze. Ha két pontot görbe vonallal szándékozunk összekötni, úgy a két pont közül legalább az egyiknek hajláspontnak kell lennie. Hajláspont elhelyezésekor egérrel a megfelelı helyre állunk, majd az egeret a kívánt irányba húzva egy olyan irányt határozunk meg, amely a ponthoz illesztendı görbe érintıjének felel meg. Ezt az irányt az úgy nevezett érintıirány-pontpár szemlélteti. Egy hajláspontnak egy másik ponttal való összekötésekor a vonaldarab hajláspontbeli érintıje megegyezik a hajláspontban beállított iránnyal. Ily módon sarok- és hajláspontok alkalmazásával összetett vonalakat lehet rajzolni. A vonal befejezése az utolsó pontra való kettıs kattintással lehetséges. Ha ehelyett végül ismét a kezdıpontra kattintunk, zárt vonalat kapunk. Hajláspontra kattintva az sarokponttá alakul, sarokpontra kattintva eltőnik az. A görbe egy tetszıleges pontjára kattintva új talppontot hozhatunk létre. Az Edit/Preferences/Editing/Pen Tool menüpontban a toll eszközt érintı beállításokat találunk. 3.5.1.6 Vonal (Line) A vonal (Line) eszközzel egyenes vonalat tudunk húzni az egér vonszolásával. Ha a rajzolás közben lenyomva tartjuk a Shift gombot, úgy az egymás utáni vonaldarabok által alkotott szögek 45 fok többszörösei lesznek. 3.5.1.7 A ceruza (Pencil) A ceruzával (Pencil) való rajzolásnál három üzemmód közül választhatunk. Az egyenes (Straighten) üzemmód egyenes szakaszokból építi fel az általunk rajzolt vonalat. A sima (Smooth) üzemmód segítségével törésmentes görbéket tudunk rajzolni, míg a tinta (Ink) üzemmód a szabadkézi rajznak felel meg. Az üzemmódot a rajzolás elıtt ki kell választani. 3.5.1.8 Az ecset (Brush) Az ecsettel való rajzolás elıtt ki kell választani az üzemmódot a rendelkezésre álló öt üzemmód közül. A Paint Normál üzemmód 30
Szerzıi rendszerek
Flash
ráfest a kiválasztott rétegen lévı rajzra. A Paint Fills üzemmód a határvonalakat szabadon hagyja. A Paint Behind üzemmóddal az üres területekre illetve az objektumok mögé lehet rajzolni. A Paint Selection üzemmód a kiválasztott alakzat kitöltött részeire ír. A Paint Inside üzemmóddal az alakzat színnel kitöltött részeire rajzolhatunk. 3.5.1.9 Téglalap (Rectangle) A téglalap eszköz több elıre elkészített alakzat rajzolását teszi lehetıvé. Ha az eszközt hosszan lenyomva tartjuk, akkor megjelenik a rendelkezésünkre álló lehetıségeket tartalmazó lista.
11. ábra Téglalap eszköz A hagyományos Rectangle Tool és Oval Tool mellett Úgy nevezett Primitive Tool típusú alakzatokat is rajzolhatunk. Ez lehetıség a rajzolt alakzat különleges módosítását, téglalap esetén a sarkok kerekítését, ellipszis esetén cikkek, illetve a középsı ellipszis kivágását teszi lehetıvé. A szükséges beállításokat a Window/Properties panelon végezhetjük el. Ha Primitive alakzatra Modify/Break Apart parancsot adunk ki, akkor az Rajzolt alakzattá (Drawing Object) alakul. A PolyStar Tool választás sokszögek, illetve csillagok rajzolására szolgál. A PolyStar alakzat tulajdonságait még a rajzolás elıtt meg 31
Szerzıi rendszerek
Flash
kell adni. A csúcsok számát illetve a poligon vagy csillag közti választást az Window/Properties panel Options gombjának hatására megnyíló ablakon állíthatjuk be. 3.5.1.10 Tintásüveg (Ink Bottle) A tintásüveg eszközzel a moziban szereplı alakzatok határvonalának színét adhatjuk meg. 3.5.1.11 Festékesvödör (Paint Bucket) A kitöltés színének meghatározására a festékesvödör eszközt használhatjuk. Ha a kitöltendı alakzat határa hézagokat tartalmaz (nem beépített zárt alakzat), akkor szükségünk lehet a megfelelı hézagméret (Gap Size) beállítására, hogy alakzatunk fölvegye a kiválasztott színt. 3.5.1.12 Pipetta (Dropper) A pipettával színmintát vehetünk egy vonaldarabról illetve kitöltésrıl, hogy azután ezt átvigyük egy másik objektumra. A mintául szolgáló alakzat fölé állva az egérkurzor ceruza alakja azt jelzi, hogy vonalszínrıl, az ecset pedig azt, hogy kitöltıszínrıl veszünk mintát. Ekkor egy kattintás hatására megtörténik a mintavétel és az egérkurzor vonalszín esetén tintásüveggé, kitöltıszín esetén festékesvödörré alakul. Ha ezután egy másik alakzatra kattintunk, az alakzat fölveszi a mintául szolgáló alakzat színét. 3.5.1.13 Radír (Eraser) A radírnak öt üzemmódja (Eraser Mode) megfelel az ecset üzemmódjainak. Az radír alakjának (Eraser Shape) alkalmas megválasztásával megkönnyíthetjük munkánkat. A felitatás (Faucet) üzemmód lehetıvé teszi, hogy könnyedén kitöröljük vagy csak az alakzat határát, vagy csak a belsejét. Kettıs kattintás a színtéren törli a színtér teljes tartalmát. 3.5.1.14 Kéz (Hand) A színpadot helyezhetjük át vele. Ugyanezt szolgálják az animáció ablakának gördítıdobozai is. 32
Szerzıi rendszerek
Flash
3.5.1.15 Nagyító (Zoom) A színpad látszólagos méretét szabályozhatjuk vele. Egy másik lehetıség a munkaterület bal alsó sarkában található Zoom Control mezı használata, ahol százalékban adhatjuk meg a színpad látszólagos méretét. 3.5.2 Ellenırzı kérdések 1. Mi a pipetta feladata?
3.6 Szövegek A Flash három beépített betőtípussal rendelkezik. A sans (talpatlan arányos), a serif (talpas arányos) és a typewriter (nem arányos) betőtípusok használata javasolt akkor, ha azt szeretnénk, hogy betőink minden gépen helyesen jelenjenek meg. Szöveg megjelenítéséhez kétféle, nyújtható és állandó mérető szövegdoboz áll a rendelkezésünkre. A nyújtható szövegdoboz jele egy üres karika, míg a rögzített mérető szövegdoboz jele egy üres négyzet a szövegdoboz jobb szélén. Nyújtható szövegdoboz rögzített méretővé alakítása az üres karika vonszolásával lehetséges. Rögzített mérető szövegdoboz nyújthatóvá alakítása az üres négyzetre való kettıs kattintással történik. A szövegdoboz három féle, Static Text, Dynamic Text és Input Text típusú lehet. A Static Text típusú szövegdoboz egyszerő szöveget jelenít meg. Ha a szöveg (Text) eszköz kiválasztása után a színpad egy pontjára kattintunk egy nyújtható típusú szövegdobozt kapunk. Ennek hossza alkalmazkodik a begépelt szöveg hosszához. Ha a szöveg eszközt használva az egeret vonszoljuk a színpad területén, úgy egy állandó mérető szövegdobozt kapunk. Üres, azaz szöveget nem tartalmazó Static Text típusú szövegdoboz nem tárolódik.
33
Szerzıi rendszerek
Flash
Dynamic Text és Input Text típusú szövegdoboz esetén egy változó nevét is meg kell adnunk a helyes mőködéshez. Az elsı esetben a változó a megjelenített, a második esetben pedig a begépelt szöveget tartalmazza. A szöveg karaktereinek, továbbá a bekezdéseknek a formázása a Window/Properties panelon lehetséges. 3.6.1 Ellenırzı kérdések 1. Hányféle beépített betőtípust ismer a Flash 5? 2. Honnan lehet felismerni az ı és ő betőket is támogató betütípusokat?
3.7 Szimbólumok, példányok Mind a rajz, mind az animáció elkészítésénél akkor járunk el helyesen, ha a többször is felhasználásra kerülı elemeket a szimbólum könyvtárban helyezzük el. Új szimbólum létrehozására két módszer áll a rendelkezésünkre. Az Modify/Convert to Symbol menüponttal a színpadon létrehozott objektumot alakíthatjuk szimbólummá, míg az Insert/New Symbol menüponttal a szimbólumszerkesztı üzemmódba jutva hozhatunk létre egy új szimbólumot. Mindkét esetben meg kell adnunk a szimbólum nevét és meg kell határoznunk a szimbólum típusát, ami moziklip (Movie Clip), gomb (Button) vagy rajz (Graphic) lehet.
34
Szerzıi rendszerek
Flash
12. ábra Új szimbólum készítése Az így létrehozott szimbólumot a Window/Library ablakban megjelenı szimbólumkönyvtárban tekinthetjük meg. A könyvtárablak felsı felében az alsó részben lévı listából kiválasztott szimbólum képe látszik.
13. ábra Szimbólumtár
A szimbólum moziban való felhasználása a szimbólumkönyvtárban ıt reprezentáló ikonnak a színpadra való vonszolásával történik. Ilyenkor a színpadon a szimbólumnak egy példánya szerepel. A példányok
35
Szerzıi rendszerek
Flash
számának növelése nem növeli jelentısen a mozi méretét, mert a példány nem más, mint a szimbólumra való hivatkozás csupán. A szimbólumok, hasonlóan a csoportokhoz, hierarchikus rendszerbe szervezhetık. Ha módosítjuk a szimbólum egy tulajdonságát, úgy ez a tulajdonság a szimbólum összes elıfordulásánál, azaz másik szimbólumban való elıfordulásainál, illetve példányainál módosul. Ehhez szimbólumszerkesztı üzemmódra kell váltani. A szimbólumszerkesztı üzemmódban a szimbólumnak saját színpada és saját idıvonala van. A színpad közepén egy szálkereszt jelzi a szimbólum regisztrációs pontját. Szimbólumszerkesztı üzemmódra a szimbólum egy példányára való kettıs kattintással, vagy a példány kiválasztása után az Edit/Edit in Place menüpont segítségével lehet váltani. Ilyenkor a színpad többi alakzata elhalványul. Egy másik lehetıség az Edit/Edit Selected parancs használata, amikor is a szimbólumot a saját koordinánáta rendszerében módosíthatjuk. Mindkét lehetıség a rendelkezésünkre áll helyi menüben is. A színpadon, az Edit illetve az Edit in Place szolgálja a saját koordinátarendszerben illetve a helyben való szerkesztést. A szimbólumtárban csak a saját koordinátarendszerben való szerkesztés lehetséges a helyi menü Edit parancsa segítségével. A moziszerkesztı üzemmódra való visszatérés a színpad egy pontjára való kettıs kattintással, vagy az Edit/Edit Document menüpont kiválasztásával lehetséges. Szimbólumok többszörözése a szimbólum helyi menüjében található Duplicate utasítás segítségével történhet. Ilyenkor az új szimbólumnak nevet kell adni, amely nem egyezhet meg a korábban létrehozott szimbólumok neveivel. Ezen kívül rendelkezhetünk az új szimbólum viselkedésérıl.
36
Szerzıi rendszerek
Flash
Ha szükségünk van olyan szimbólumra, amely egy másik mozi könyvtárában található, a File/Import/Open External Library menüpont segítségével nyissuk meg a szóban forgó szimbólumot tartalmazó mozit. Ekkor ebbıl a moziból csak a könyvtár panelt fogjuk látni, ahonnan átvonszolhatjuk a kívánt szimbólumot. Figyeljük meg, hogy vele együtt átmásolódnak a felépítéséhez felhasznált szimbólumok is. Lehetıség van arra is, hogy egy szimbólum példányának tulajdonsága megváltozzon anélkül, hogy ez érintené magát a szimbólumot illetve a többi példányt. A Window/Properties panelon megváltoztathatjuk a példány viselkedésének típusát, a Swap gomb segítségével kicserélhetjük a kiválasztott példányt egy másik szimbólum példányára. A Color mezı beállításaival a kiválasztott példány egyéb jellemzıit tudjuk megváltoztatni. Ha egy szimbólumpéldányt a Modify/Break Apart menüpont segítségével leszakítunk, akkor megszőnik a példány és a szimbólumosztály kapcsolata, és a példány az ıt alkotó elemek csoportosítatlan halmazává válik. Ha rajzolt alakzatot (Drawing Object) szakítunk el az osztályától, akkor a rajzolt alakzat szerkeszthetı alakzattá alakul. Ha egy szöveggel tesszük ugyanezt, akkor a szöveg karakterekbıl álló szövegekké alakul. Ha erre a karakterhalmazra újra kiadjuk a leszakítás parancsát, akkor a szöveg raszteres grafikává alakul. Csoport esetén a leszakítás utasítás a csoportosítás megszőnését eredményezi. 3.7.1 Közös könyvtár A Flash bizonyos elıre elkészített szimbólumokkal segíti a mozik készítıit. Ezek a szimbólumok a Window/Common Libraries menüpont segítségével érhetık el. 3.7.2 Ellenırzı kérdések.
37
Szerzıi rendszerek
Flash
3.8 Csoport A csoport segíti az animáció szerkesztését, az animáció mőködése szempontjából azonban nincs szerepe. A Modify/Group, illetve Modify/Ungroup menüparancsok segítségével tetszıleges elemekbıl alakíthatunk csoportot, illetve megszüntethetjük azt.
3.9 Elemek tulajdonságainak megváltoztatása A színpadon megjelenített elemek a következı kategóriákba sorolhatók Alakzat (Shape) Ráállva a Properties panel bal sarkában Shape felirat látható. Olyan a színpadon szerkeszthetı, csoporthoz nem tartozó elem, amely nem példánya egyetlen szimbólumnak sem. Kijelölésnél sötétkék befoglaló téglalap veszi körül, megjelenése egyszerő színezés esetén raszteresre változik. Egy kattintás a belsejére csak a belsejét, két kattintás a belsejét és a határát is kijelöli. Egy kattintás a határra a határ aktuális darabját, két kattintás az egész határt kijelöli. Rajzolt alakzat (Drawing Object) Ráállva a Properties panel bal sarkában Drawing Object felirat látható. Olyan a szerkesztéskor létrejövı csoport, amelyik csak egyetlen elemet tartalmaz. Ha a Modify/Break Apart paranccsal megszüntetjük a csoportosítást, a Drawing Object tulajdonságot vissza már nem tudjuk állítani. Minthogy egyetlen elemet tartalmaz, ezért a csoportosítás megszüntetése nélkül átszínezhetı. Csoport Csoportot tetszıleges elemekbıl, azaz alakzatokból, szövegekbıl, példányokból és más csoportokból alakíthatunk. Ráállva a Properties panel bal sarkában Group felirat látható és
38
Szerzıi rendszerek
Flash
ezzel egy idıben a színpadon kék téglalaphatár jelenik meg körülötte. Kétszeres kattintással csoportszerkesztı üzemmódba juthatunk, ahol megváltoztathatjuk a csoportot alkotó elemek tulajdonságait. A színpadra visszatérve már a megváltoztatott csoportot látjuk. A csoport a szerkesztés folyamatának nélkülözhetetlen segédeszköze annak ellenére, hogy a mozi mőködése szempontjából nem játszik semmilyen szerepet. Szimbólumpéldány Egy szimbólumosztálynak a színpadra vonszolásával, vagy ActionScript segítségével létrehozott elem. Ráállva a Properties panel bal sarkában Movie Clip, Button vagy Graphic felirat látható és ezzel egy idıben a színpadon egy szálkereszt és kék téglalaphatár jelenik meg körülötte. Kétszeres kattintással szimbólumszerkesztı üzemmódba juthatunk, amit a színpad közepén megjelenı szálkereszt jelez. A jelenethez visszatérve az objektum összes példányát már a megváltoztatott tulajdonságokkal látjuk. Szöveg Ráállva a Properties panel bal sarkában Static Text, Dynamic Text vagy Input Text felirat jelenik meg és ezzel egy idıben a színpadon lévı szöveget olyan kék téglalaphatár veszi körül, amelynek a sarkaiban kis kék négyzetek vannak. Kétszeres kattintás hatására szövegszerkesztı üzemmódba jutunk. 3.9.1 Takarási sorrend Az egy azon rétegen elhelyezkedı alakzatok létrehozásuk sorrendjében kerülnek egymás fölé úgy, hogy az utoljára létrehozott elem van legfelül. Ha a fölül lévı elemet elmozdítjuk, a másik elem alatta lévı része törlıdik. Ha az alakzatok kitöltésének színe megegyezik és a takarásban lévı alakzatok határa lehetıvé teszi az összeolvadást, akkora két alakzat összekapcsolódik és a továbbiakban már egyetlen elemként jelenik meg. 39
Szerzıi rendszerek
Flash
Egy rétegen belül az alakzatok helyezkednek el legalul. A szöveg, példány és csoport típusú elemek az alakzatok felett vannak úgy, hogy az utoljára létrehozott van legfelül. A szöveg, példány és csoport típusú elemek egymáshoz viszonyított sorrendjét a Modify/Arrange menüpont parancsaival változtathatjuk meg. 3.9.2 Transzformáció (Transform) A Window/Panels/Transform panelon az objektumok átméretezése, forgatása és ferdítése valósítható meg.
14. ábra Transform panel Az átméretezés adatait százalékban, míg a forgatás (Rotate) és ferdítés (Skew) adatait fokokban kel megadni. A kényszerít (Constrain) választógombbal az arányos átméretezésrıl lehet rendelkezni. A megadott transzformáció az Enter billentyő hatására hajtódik végre. A jobb alsó sarokban lévı alapállapot (Reset) gomb visszaállítja a transzformáció elıtti állapotot. A tıle balra lévı transzformáció a másolaton (Copy and apply transform) gomb az eredeti objektum változatlanul hagyása mellett egy másolaton hajtja végre a transzformációt. Ez egy hasznos segítség akkor, amikor egy alakzat transzformáltjainak segítségével akarunk egy objektumot létre hozni.
40
Szerzıi rendszerek
Flash
3.9.3 Regisztrációs pont áthelyezése átméretezéskor A regisztrációs pont az elem színpadon való elhelyezéséhez, mozgatásához, transzformációjához szükséges. Ez általában az elem befoglaló téglalapjának a középpontja, de a Modify/Transform/Edit Center menüparancs szöveg, példány, csoport esetén lehetıvé teszi a regisztrációs pont megváltoztatását. Forgatáskor, azaz a nyíl eszköz forgatás (Rotate) opciója esetén a regisztrációs pont az elem középpontja. Átméretezésnél, azaz a nyíl eszköz átméretezés (Scale) opciójánál a megragadottal átellenes méretezıdoboz marad helyben, azaz játssza a regisztrációs pont szerepét. Példány regisztrációs pontja szálkeresztként látszik a színpadon. Kezdetben, azaz a példány létrehozásakor megegyezik a szimbólumosztály origójával, de megváltoztatható és ezért példányonként különbözı is lehet.
15. ábra Info panel
41
Szerzıi rendszerek
Flash
3.9.4 Igazítás (Align) Az objektumok elrendezésére a Window/Panels/Align panel számos lehetıséget kínál. Az egyszerőség kedvéért tegyük fel, hogy a színpadhoz (To Stage) gomb be van kapcsolva.
16. ábra Align panel Az igazítás (Align) sor elsı három lehetısége a kiválasztott objektumok bal szélét, közepét illetve jobb szélét igazítja vízszintesen balra, középre illetve jobbra a színpadon. Az (Align) sor második három gombja a függıleges igazításról rendelkezik. Az elosztás (Distribute) sor elsı három lehetısége a kiválasztott objektumokat úgy rendezi el függılegesen, hogy felsı szélük, közepük, illetve alsó szélük egyenletesen helyezkedjen el a színpadon. A sorban elhelyezkedı másik három gomb az vízszintes elrendezését teszi lehetıvé. A méretezés (Match Size) gombcsoport a kiválasztott objektumoknak a vízszintes, függıleges, illetve mindkét méretét a színpadhoz igazítja. A térköz kiegyenlítése (Space) gombcsoport a kiválasztott alakzatok közti távolságokat egyenlíti ki vízszintes illetve függıleges irányban.
42
Szerzıi rendszerek
Flash
Ha a színpadhoz (To Stage) gomb be van kapcsolva, úgy az igazítás, elosztás, méretezés, térköz kiegyenlítése a színpadhoz viszonyítva történik. Ellenkezı esetben a színpad szerepét az a legkisebb téglalap veszi át, amelyben a kiválasztott objektumok elhelyezhetık. 3.9.5 Csoportosítás és feloldása A Flash a Modify/Group menüpont segítségével lehetıvé teszi elemek egyetlen objektummá való alakítását. A csoportosítás feloldása a Modify/Ungroup menüpont segítségével lehetséges. A csoportok hierarchikus struktúrát alkothatnak. 3.9.6 Széttördelés, elszakítás (Break Apart) A Modify/Break Apart menüparancs elszakítja a példányt a hozzárendelt szimbólumtól. Hatása visszafordíthatatlan, ezért alkalmazása nagy körültekintést igényel. Az importált grafikák szimbólumként kerülnek be a moziba. Miután a példányt elszakítottuk a szimbólumtól, az így kapott bittérképes grafikát kitöltésként is használhatjuk. Szöveges objektumok esetén az elszakítás a szöveg bittérképes grafikává alakítását jelenti. 3.9.7 Színek A színeket kiválaszthatjuk az alakzatok létrehozása elıtt, de a már létezı alakzatok színét utólag is lehet módosítani.
43
Szerzıi rendszerek
Flash
17. ábra Tintásüveg
18. ábra Festékesvödör A határvonalak stílusát, vastagságát és színét a Properties panelon állíthatjuk be. A kitöltés stílusa lehet tömör, változó, sugarasan változó, vagy választhatunk egy bittérképes
19. ábra Color panel
20. ábra Swatches panel
44
Szerzıi rendszerek
Flash
A Window/Panels/Mixer menüpont hatására megnyíló Mixer panel mind a határoló görbe, mind a kitöltés színének tetszıleges megválasztását teszi lehetıvé. Az Alpha azaz a fedés értéke szabályozza a kiválasztott szín átlátszóságát (100 százalék takarásnak felel meg). A Flash az RGB a HSB és a hexadecimális színrendszert támogatja. 3.9.8 Színminták A Fill és Mixer panel segítségével kikevert átmeneteket és színeket lehetıségünk van megırizni a késıbbi felhasználás céljából. A Fill panel jobb felsı kis nyilára kattintva az Add Gradient parancs az átmeneteket, a Mixer panel jobb felsı kis nyilára kattintva az Add Swatch parancs a színeket tárolja, amelyeket aztán a Swatch panel segítségével tudunk használni. Az így létrehozott színek és átmenetek a film fájljában tárolódnak. 3.9.9 Ellenırzı kérdések 1. Mi a To Stage gomb szerepe igazításánál?
3.10 Animáció A Flash mozik alapértelmezés szerint másodpercenként 12 képkockát jelenítenek meg. Ez kevesebb a mozifilmek másodpercenkénti 24, a PAL 25 és az NTSC szabvány 30 értékénél, de az Interneten megjelenve elegendı ahhoz, hogy folytonos mozgás érzetét keltse. Az animáció szerkesztésének legfontosabb kelléke az idıvonal.
21. ábra Idıvonal (Timeline)
45
Szerzıi rendszerek
Flash
Képkockát az Insert/Timeline/Frame, míg kulcsképkockát az Insert/Timeline/Keyframe illetve Insert/Timeline/Blank Keyframe menüpont segítségével szúrhatunk be az idıvonalon elızıleg kiválasztott helyre aszerint, hogy a tartalma megegyezzen az elızı kulcskeret tartalmával vagy üres legyen.. Képkocka törlése az Edit/Timeline/Remove Frames menüpont segítségével lehetséges. Képkocka tartalmának a törlése az Edit/Timeline/Clear Frames menüpont segítségével lehetséges. Az Modify/Timeline/Clear Keyframe parancs a kocka kulcs jellegét szünteti meg, amellyel egy idıben a keret tartalma lecserélıdik az ıt megelızı kulcskeret tartalmára. A fenti utasítások az idıvonal helyi menüjében is megtalálhatók. A legegyszerőbb, kockánkénti (Frame by Frame) animációnál minden kockát külön meg kell rajzolni. Ennél hatékonyabb, ha a történésnek csak a leglényegesebb fázisait rögzítjük a kulcskereteken, a közöttük lévı keretek tartalmát már a Flash számítja ki. Ez az úgy nevezett tweening technika, egyszerősíti a szerkesztést és csökkenti a mozi fájljának méretét. A tweening kifejezés az angol between szóból származik és a két kulcskeret közti mőveletekre utal. A tweening módszernek két típusát különbözteti meg a Flash. A köztesmozgás (Motion Tween) a mozgáson túl transzformációk, színek és az átlátszóság átmeneteinek a megvalósítására is alkalmas. Általában elmondható, hogy a köztesmozgás minden olyan történés megjelenítésére használható, amelyet egy matematikai formula le tud írni. Megvalósítása szimbólumokkal történik. Az idıvonalon világoskék alapon, kereteken áthúzódó nyíl jelzi. A köztesváltozás (Shape Tween) a szabálytalan, formulába nem vagy nehezen önthetı átalakulások megvalósítására szolgál. Megvalósítása alakzatokkal történik. Az idıvonalon világoszöld alapon, kereteken áthúzódó nyíl jelzi.
46
Szerzıi rendszerek
Flash
Mindkét típus esetén lehetıségünk van az animáció sebességét befolyásolni. Az elsı kulcskereten állva a lassítás/gyorsítás (Easing) mezıben a történés átlagsebességhez viszonyított kezdısebességét állítjuk be. Ha az elsı kulcskockán a Window/Panels/Frame panel Easing mezıjének értékét nagynak választjuk, akkor az animáció gyorsan indul, azaz lassulni fog. Alacsony Easing érték gyorsuló animációt eredményez. 3.10.1 Köztesmozgás (Motion Tween) A köztesmozgás a következı lépések egymásutánjaként valósítható meg. 1. Készítsük el a mozgó elem szimbólumosztályát. 2. Helyezzük el az osztály egy példányát a moziban. Ez a következıket jelenti: a. Készítsünk egy réteget a számára. b. Vonszoljuk a szimbólumot a könyvtárból a réteg mozgást megjelenítı keretsorozatának elsı keretébe. c. Másoljuk le az elsı keretet a keretsorozat minden kertébe. d. Alakítsuk az utolsó keretet kulcskeretté. 3. Hozzunk létre „különbözıségeket” a szimbólumnak a két kulcskeretben lévı példánya között. 4. A keretsorozat elsı kulcskeretén állva a helyi menübıl adjuk ki a Create Motion Tween parancsot. Ha helyesen jártunk el, akkor a keretsorozaton kék alapon áthúzódó nyíl jelzi azt. A köztesmozgás utolsó keretét egy gombóc jelöli. Ennek jobbra illetve balra való vonszolásával, a köztesmozgáshoz tartozó keretek számát tudjuk változtatni, amellyel a mozgás lassítását illetve gyorsítását tudjuk elérni. Képkockák egy sorozatát kijelölve azok egy másik helyre, akár másik rétegbe is másolhatók illetve mozgathatók a következı módon. 47
Szerzıi rendszerek
Flash
Jelöljük ki a kockasorozatot, majd az Edit/Copy Frames vagy az Edit/Cut Frames menüparancsok segítségével másoljuk azokat a vágólapra. Álljunk rá arra a kockára, ahová a kiválasztott kockahalmaz elsı kockáját helyezni szeretnénk. Ekkor a vágólap tartalmát az Edit/Paste Frames menüparanccsal beilleszthetjük a kívánt helyre. Csak teljes köztesmozgást lehet másolni, mozgatni. Képkockacsoport lejátszási sorrendjének megfordításához válasszuk ki a kockasorozatot, majd alkalmazzuk a Modify/Frames/Reverse menüparancsot. Köztesmozgás alatt nem csak a szimbólumok helyzete, hanem mérete, állásszöge, ferdesége is változtatható, amit a Window/Panels/Transfom menüpont segítségével érhetünk el. Ezen kívül fokozatosan változtatható az alakzatok színe, átlátszósága is, amit a Window/Panels/Effect panelon állíthatunk be. A kezdı- illetve végállapotok a kulcskockákon állíthatók be. A Window/Panels/Frame panelon alakzatok forgatását kezdeményezhetjük. A CW (ClockWise) óramutató járásával megegyezı irányú, a CCW (CouterClockWise) óramutató járásával ellentétes irányú forgatást jelöl. Az Orient to Path (irányultság az útvonal szerint) gomb bekapcsolása az eredményezi, hogy az alakzat és az útvonal érintıjének szöge a mozgás során állandó marad. 3.10.2 Mozgásvezérlı (Motion Guide) Az alakzatoknak egy kijelölt útvonalon való mozgatása egy lejátszáskor láthatatlan, úgy nevezett Motion Guide Layer (mozgásvezérlı réteg) segítségével történik. A mozgatandó alakzatot tartalmazó rétegbe állva az Insert/Motion Guide menüparancs létrehoz egy mozgásvezérlı réteget az eredetileg kiválasztott réteg fölött. Amennyiben egy másik réteget is ugyanehhez a mozgásvezérlıhöz szándékozunk kapcsolni, úgy húzzuk a réteget a mozgásvezérlı réteg alá. A rétegeknek a mozgásvezérlıhöz való kapcsolódását az jelzi, hogy valamennyien a mozgásvezérlı alatt, egy 48
Szerzıi rendszerek
Flash
kissé jobbra behúzva láthatók. A kapcsoltság a rétegnek a mozgásvezérlı réteg fölé húzásával szüntethetı meg. Ezután meg kell rajzolni a mozgás útvonalát a mozgásvezérlı rétegen. Ügyeljünk arra, hogy a mozgás útvonalául szolgáló görbe egyetlen darabból álljon, amit úgy tudunk ellenırizni, hogy nyíl üzemmódban duplakattintásra az egész görbe kijelölıdik. Ajánlatos ezután ezt a réteget zárolni a késıbbi hibák elkerülése érdekében. Végül a mozgatandó alakzat rétegére váltva, vonszoljuk az objektumot a kezdı kulcskockában az útvonal kezdıpontjához, a záró kulcskockában pedig az útvonal végpontjához. Ugyanehhez az útvonalhoz más réteg más alakzatát is hozzákapcsolhatjuk. 3.10.3 Köztesváltozás (Shape Tween) Míg a köztes mozgást szimbólumokon mőködik, addig a köztes alakváltozás csak alazatokra alkalmazható. A köztes mozgás az Insert/Create Motion Tween menüponttal ugyanúgy elérhetı, mint a Window/Properties panelen lévı Tweening mezınél. Ezzel szemben a köztesváltozás kizárólag a Window/Properties panelen lévı Tweening mezınél választható ki. A legfontosabb különbség a köztesmozgás és a köztesváltozás között az, hogy míg a köztesmozgás mindig egységes objektumként kezeli a mozgatott alakzatot, addig a köztesváltozás során az elem egy másik elemmé alakul át. Az is elıfordulhat, hogy az átalakulás közbülsı kockáiban részeire esik. Ezt a regisztrációs pont szerkesztéskor való ügyes megválasztásával kerülhetjük el. 3.10.4 Köztesváltozás befolyásolása Ha két kulcskockába két különbözı alakzatot helyezünk és köztes alakváltozást állítunk be a közöttük lévı kockák számára, úgy az egyik alakzatnak a másikba való átalakulását valósítjuk meg. Az ily módon automatikusan megvalósított átmenetet részletekbe menıen 49
Szerzıi rendszerek
Flash
befolyásolhatjuk. Ehhez úgy nevezett alakirányítókat kell elhelyeznünk az átalakulás elsı kulcskockáján (a másodikon ez nem lehetséges). A View/Show Shape Hints menüparancs hatására láthatóvá válnak a következıkben elhelyezendı alakirányítók. A Modify/Transform/Add Shape Hint menüparancs segítségével betőkkel megkülönböztetett piros színő pontok jelennek meg mindkét kulcskocka színpadán. Ha ezeket az alakzat határára húzzuk, színük az elsı kulcskockán sárgára, a második kulcskockán pedig zöldre változik. Ekkor az átalakulás során az elsı kereten lévı alakirányító a vele azonos betővel jelölt második kulcskereten lévı alakirányítóba megy át.
3.11 Maszk használata Érdekes hatást lehet elérni, ha alakzatokat maszkként használunk. A maszkolásnál az egyetlen maszk réteghez több réteg, a réteg alatt elhelyezkedı általa maszkolt rétegek kapcsolódnak. Beállítása a maszk réteg helyi menőjében a legegyszerőbb. A maszkolást az idıvonalon az jelzi, hogy a maszkolt rétegek kissé behúzódva jelennek meg. A maszkolásban a maszk rétegben elhelyezkedı kitöltések vesznek csak részt. Ez azt jelenti, hogy a maszkolt rétegekbıl csak annyi látszik, amennyit a maszkban lévı kitöltések láttatni engednek. Úgy képzelhetjük, mintha egy kulcslyukon keresztül szemlélnénk a világot, pontosabban a maszkolt rétegeket, ahol a kulcslyuk szerepét a maszk rétegben rajzolt kitöltések játsszák. A többi réteghez képest a maszk és az általa maszkolt rétegek takarás szempontjából egyetlen rétegnek számítanak. Minthogy a szövegmezıben lévı karakterek kitöltésként viselkednek, ezért a szöveg is használható maszknak.
50
Szerzıi rendszerek
Flash
3.12 Interaktív mozik Az interaktív mozik készítésének nélkülözhetetlen kelléke a nyomógomb. 3.12.1 Nyomógomb A nyomógomb mindig egy nyomógomb típusú szimbólum példányaként fordul elı a moziban. A gombnak saját idıvonala van, amely azt mutatja, hogy a nyomógombok moziklipként is mőködhetnek.
22. ábra Nyomógomb idıvonala A nézı egérrel való beavatkozását eseménynek nevezzük. A Flash által értelmezett események a következık. Up: az egérmutató nincs a nyomógomb fölött, Over: az egérmutató a gomb fölött van, Down: az egér gombjának lenyomása a nyomógomb fölött, Hit: kattintás az egér gombjával a nyomógomb felett Mind a négy eseményhez tartozik a nyomógomb szimbólumnak egyegy kockája, amelynek segítségével - a Hit esemény kivételével beállíthatjuk az illetı eseményhez tartozó megjelenést. A Hit eseményhez tartozó kockán egy olyan láthatatlan területet jelölhetünk ki, amelyik érzékelni fogja az egérgombbal való kattintást.
51
Szerzıi rendszerek
Flash
A nyomógombnak az eseményre adott válaszát akciónak nevezzük. A nézı által a nyomógombon végrehajtott beavatkozások a nyomógomb különféle akcióit indíthatják el. Az akciók beállítása a nyomógomb példányán, a helyi menü Actions menüpontjának kiválasztásával lehetséges. Egyszerő gombok esetében elegendı a nyomógombnak csupán az Up esemény bekövetkezéséhez tartozó állapotát megadni. Ilyenkor a többi esemény is az itt megadott megjelenést fogja használni. Az akciók beállítása természetesen nem hagyható el. 3.12.2 Moziklipek A Flash sokoldalúságához hozzájáruló eszközök közül talán a legfontosabb a moziklip. Ez a szimbólumok egyik viselkedési formája. A moziklipnek saját idıvonala van, amelyen a lejátszás önállóan történik. A mozi idıvonalán csak egy szimbólumpéldányként jelenik meg. A moziklipek más szimbólumok akcióival vezérelhetık. Gyakran nyomógombok állapotaihoz rendelve találkozunk velük. A moziklip és a grafikus szimbólum közti legfontosabb különbség a hozzárendelhetı akciókban mutatkozik meg. 3.12.3 Animáció moziklippé alakítása A fı idıvonalon lévı animáció moziklippé alakítása képkockák másolásával lehetséges. Az Insert/New Symbol paranccsal hozzunk létre egy új moziklip viselkedéső szimbólumot. Ezután a fı idıvonalon kijelölt filmkockákra az Edit/Copy Frames vagy Edit/Cut Frames utasítás alkalmazásával majd az új szimbólum szerkesztési területén az Edit/Paste Frames utasítással átmásolhatjuk vagy átmozgathatjuk a kijelölt filmkockákat az új moziklipbe.
52
Szerzıi rendszerek
Flash
3.13 Komponensek A komponensek, amelyek elıször a Flash 6-ban jelentek meg, lehetıvé teszik, hogy az animációt a Windows-ban szokásos elemekkel, nyomógombbal, rádiógombbal, jelölınégyzettel stb. lássuk el. Ezek az elemek nemcsak látványukkal emelik az animáció színvonalát, hanem a fejlesztık kényelmét is szolgálják.
3.14 XML támogatás Honlapok készítésénél természetesen fölmerülı kérdés, hogy az adattartalom a Flash animáció újrafordítása nélkül dinamikusan változtatható legyen. Erre az egyik megoldás az XML (eXtensible Markup Language) használata, amelynek támogatása már a Flash 6ban is jelen volt. A nyelv strukturált adatátadást tesz lehetıvé szerver oldalon.
3.15 Tesztelés, mentés, publikálás Az elkészült mozi legegyszerőbb tesztelése a lejátszófej kockákon való léptetésével valósítható meg. Ennél kényelmesebb, ha a Window/Toolbars/Controller menüponttal láthatóvá tesszük a vezérlıt (Controller) és a tesztelést ennek a segítségével végezzük. Ha a mozi elkészült, a File/Export Movie menüparanccsal elmenthetjük azt egy swf kiterjesztéső fájlba, amelyet aztán a Flash lejátszó értelmezni tud. Ha a Control/Test Movie menüpontot választjuk, akkor a tesztelés elıtt létrejön ez az swf kiterjesztéső fájl. Ha arra vagyunk kíváncsiak, hogyan fog kinézni mozink egy böngészıben, válasszuk a File/Publish Preview menüpontot. Ilyenkor a mozit egy html oldalba beágyazva látjuk, amelyet a böngészıbe integrált Flash lejátszó (plug-in) segítségével tekintünk meg. Ilyenkor elkészül egy html kiterjesztéső fájl, amely tartalmazza a mozink megjelenítéséhez szükséges html utasításokat. 53
Szerzıi rendszerek
Flash
3.16 Hagymahéj tesztüzemmód Nevét a hagymahéjpapírról kapta, amely egy vékony átlátszó papír. Segítségével jól elemezhetık a mozgások. A hagymahéj gomb bekapcsolása után az idıvonal kockaszámokat feltüntetı sávján egy úgy nevezett hagymahéj mutató jelenik meg. Ez nem más, mint egyszerre megjelenítendı kockák sorozata. Ezen kockasorozat elsı és utolsó elemét vonszolással külön-külön beállíthatjuk. (Ha valamelyik irányban elérjük mozink végét, állítsuk arrébb a lejátszófejet.) Lejátszáskor a kulcskeretek élesen, a többiek halványan jelennek meg.
3.17 ActionScript 2.0 (AS2) A Flash programozása a JavaScript nyelvhez nagyban hasonló ActionScript nyelven történik. Interaktív filmek készítéséhez nélkülözhetetlen az ActionScript. Az ActionScript 2.0 a Flash 7-ban, más néven a Flash MX 2004-ben jelent meg, legfejlettebb állapotát a Flash 8-ban érte el. A nyelv objektum orientált. Az osztály (class) példányait (instance) objektumoknak nevezzük. Az osztály leírása tartalmazza tulajdonságait (property), metódusait (method) és eseménykezelıit (event handler). Az osztály által definiált tulajdonságok, metódusok és eseménykezelık a példány (objektum) létrejöttekor töltıdnek fel konkrét tartalommal (deklarálódnak). Az öröklıdés során a szülı osztályból kiindulva egy olyan gyermek osztály jön létre, amelyik a szülı osztály minden tagját (adattagot és tagfügvényt) tartalmazza, és amelyik ezeken kívül még további tagokat is tartalmazhat. Az osztályok között ezen kívül még tartalmazási relációk is fenn állhatnak. Ily módon az osztályok és ebbıl következıen az objektumok is hierarchikus rendszert alkotnak a tartalmazás és az öröklıdés alapján.
54
Szerzıi rendszerek
Flash
ActionScript nyelvő programot kerethez, vagy objektumhoz rendelhetünk. Az objektum, amihez kódot rendelünk nyomógomb típusú vagy moziklip típusú szimbólum példánya kell, hogy legyen. Grafikus viselkedéső szimbólumhoz ActionScript utasítás nem írható. Az idısávon egy cellára állva a Window/Actions menüpont hatására megjelenı ablakban a Frame Actions panel jelenik meg. Nyomógomb és moziklip példányára állva az Object Actions panel válik láthatóvá. Az akció összeállítása történhet menüvezérelt módon (Normal Mode) vagy közvetlenül szerkesztve (Expert Mode). A kettı között a panel jobb felsı sarkában található kis jobbra mutató háromszög segítségével lehet váltani. A panel bal oldalán az akciók (utasítások) mappákba csoportosítva jelennek meg. Normal Mode esetén egy-egy utasításra való kattintás a panel bal oldalán annak a panel jobb oldali részén való megjelenését eredményezi. AS2 esetén az eseménykezelés metódusok segítségével történik. Az AS3 ezt a feladatot, Java-hoz hasonlóan, külön eseménykezelı osztályokkal oldja meg. Nyomógomb esetén az eseménykezelı metódus az on() metódus, míg moziklip esetén az onClipEvent() metódus végzi ugyanezt. Mindkét esetben a metódus általa kezelt eseményt a metódus paramétereként kell megadni. Kerethez rendelt kód akkor hajtódik végre, amikor a lejátszófej a kódot tartalmazó kockára lép. Szerkesztéskor az aktuális keretet a rétegen belül megelızı utolsó kulcskerethez fog hozzárendelıdni az akció. Kerethez rendelt akció esetén egy kis „a” bető jelenik meg az idıvonal megfelelı kulcskeretében.
55
Szerzıi rendszerek
Flash
Ahhoz, hogy az ActionScript hivatkozni tudjon egy objektumra, a színpadon kijelölve az objektumot, a Properties panel segítségével el kell nevezni azt. Az objektumokra való hivatkozás, a fájlrendszerekhez hasonlóan, a hozzájuk vezetı útvonal segítségével történik. Itt is van relatív és abszolút útvonal. A nevek közti elválasztó karakter a pontot. Ha el akarjuk kerülni a sok hibával járó szerkesztést az objektumokra való hivatkozások esetén, használjuk a panel jobb alsó részén található plusz és karika együttesével jelölt Insert a target path gombot. Ezt a gombot használva kényelmes, grafikus felület áll a rendelkezésünkre a megfelelı objektum kiválasztására. 3.17.1 Adattípusok Az addattípusok két részre bonthatók, úgy, mint primitív adattípusokra és referencia adattípusokra. A referencia változó más nyelvek mutató fogalmára hasonlít. Nevüket onnan kapták, hogy primitív adattípusokra, vagy összetett adatstruktúrákra hivatkoznak. Primitív típusok: string. Number, Boolean, undefined, null. Referencia típusok: tömbök, objektumok, stb. Az idézıjelek és az aposztrófok között lévı karaktert vagy karaktereket string típusú adatként kezeli a Flash. Az AS2 nem tesz különbséget egész szám és lebegıpontos szám között, mindegyiket egységesen számnak (number) tekinti. A Boolean típus lehetséges értékei true és false. Ilyen típusú változót az feltételes utasításokban (if) és a vezérlı utasításokban (for, while) használ az ActionScript. A trace() függvény mindig string értékké konvertálja az Output panelra kiírtakat.
56
Szerzıi rendszerek
Flash
Adattípusok közti konverziót szolgál a casting. A 0 szám false, minden nem-nulla szám true értékké konvertálható. trace(Boolean(0)) hatása false megjelenése az Output panelon. trace(Boolean(1)) hatása true megjelenése az Output panelon. Hasonlóan trace(Boolean(„true”)) hatása true megjelenése az Output panelon. trace(Boolean(„false”)) hatása true megjelenése az Output panelon. 3.17.2 Változók A változó egy olyan tároló, amelyik adatot, vagy adatra való hivatkozást tartalmaz. Az ActionScript 2.0 erısen típusos nyelv, ami azt jelenti, hogy ha a var valtozoNev:Típus = kezdıérték; deklarációval létrehozott változó kezelése a program folyamán nem mindig következetes, akkor még fordítási idıben hibaüzenetet kapunk. A látszólagos szigorúság ellenére az AS2 elég lazán kezeli a típusokat. Deklarációban, amely többször is elıfordulhat egy kódban, nem kötelezı a var kulcsszó használata. Amennyiben nem rendelkezünk a változók kezdıértékérıl, úgy azok alapértelmezett értéke, az undefined fog programunkban megjelenni. Változók elnevezésénél célszerő a Charles Somonyi által bevezetett Hungarian notation konvenciót alkalmazni, amely szerint a változó nevében egy prefix utal a változó típusára. Pl sNev String típusú, nSzam Number típusú, bVajon logikai típusú változót jelöl. További fontosabb prefixek: m, mint MovieClip, bt, mint Button, a, mint Array, t, mint TextField, stb. Ezek használata nem kötelezı, de sokak szerint megkönnyíti a fejlesztést.
57
Szerzıi rendszerek
Flash
3.17.3 Operátorok A szokásos operátorokon kívül mőködik a +=, -=, *=, /= értékadás. A ++, --, operátor az eggyel való növelés illetve csökkentés. A % a maradék (modulo) operátor. A logikai operátorok közül == az egyezés === a szigorú egyezés operátora. Míg az elıbbinél automatikus konverziót hajt végre a Flash, mielıtt megvizsgálná az egyezést, addig az utóbbinál magukat a változókat hasonlítja össze. Az && az „és” mővelet, a || a „vagy” mővelet, ! a tagadás operátora. Bitenkénti operátorok széles skálája segíti a fejlesztıket. A mőveletek végrehajtásának sorrendje követi a matematikában szokásos sorrendet. 3.17.4 Feltételes utasítás if(nValt == 1) { trace("Az érték egy"); } else { trace("Az érték nem egy"); }
3.17.5 Vezérlı utasítások A nyelv szintaktikája követi az általánosan elfogadott formákat. A rövidség kedvéért néhány példa segítségével csak utalunk a lehetıségekre és emlékeztetünk a szintaktikára, amely nem sokban különbözik a C++-ban és Java-ban szokásostól. Ciklus utasítás meghatározott ismétlésszám esetén. for (var i:Number = 0; i < 10; i++){ trace(i); }
58
Szerzıi rendszerek
Flash
Elöl tesztelı ciklus var i:Number = 0; while(i < 10) { trace(i); x++; } Hátul tesztelı ciklus: legalább egyszer végrehajtódik. var i:Number=0; do{ trace(i); x++; } while (i<10) Elágazó utasítás var nErtek:Number = 6; switch(nErtek){ case 1: trace("1"); break; case 2: trace("2"); break; case 3: trace("3"); break; default: trace("egyik sem"); }
3.17.6 Függvények A paraméterátadás primitív típusok esetén érték szerint történik, referencia változók, azaz objektumok esetén pedig cím szerint.
59
Szerzıi rendszerek
Flash
Függvényhívás esetén a primitív típusokra vonatkozó, érték szerinti paraméterátadás azt jelenti, hogy ezekrıl a változókról egy másolat készül a függvény számára, és a függvényen belül a másolatokkal dolgozunk. A függvényen belüli változások nem érintik a függvény hívásában szereplı változók értékeit. function novelEggyel(nValue:Number):Number{ nValue++; return nValue; } var nSzam:Number = 10; var nSzamPluszEgy:Number = novelEggyel(nSzam); trace(nSzam); trace(nSzamPluszEgy); Az Output ablak a következıt mutatja: 10 11 Ha egy moziklip példányának neve mKor, akkor maga a moziklip fog az ablak (100,100) koordinátájú pontjába kerülni. function mozog(mA:MovieClip, x:Number, y:Number):Void{ mA._x = x; mA._y = y; } Hívás: mozog(mKor, 100, 100);
3.17.7 Érvényességi kör (Scope) A változók abban a program blokkban (függvény) érhetık el, amelyben deklarálódtak. Amennyiben egy kulcskeretben történt a deklaráció, úgy a kulcskeretet tartalmazó idıvonal kulcskeretet követı részén érhetı el a változó. 60
Szerzıi rendszerek
Flash
Másik idıvonalon vagy moziklipben lévı változót vagy függvényt az elérési út felhasználásával lehet használni. 3.17.8 Referencia készítése függvényhez Függvényeket referencia változókon keresztül is elérhetünk. Ilyenkor a függvényt mintegy becenéven, alias néven hívjuk meg. function calculateArea(a:Number, b:Number):Number { var nArea:Number = a * b; return nArea; } Hívás: var fArea:Function = calculateArea; trace(fArea(6, 6)); A fenti deklarációkat összevonva: var fArea:Function = function (a:Number, b:Number):Number { var nArea:Number = a * b; return nArea; } Hívás: trace(fArea(6, 6)); Az eseménykezelık deklarálása is ezzel a szintaktikával történik. A következı kód egy Gomb nevő Button típusú szimbólumhoz deklarál eseménykezelıt. A kód kulcskeretre írandó. Gomb.onRelease = function():Void{ trace("halló világ"); };
61
Szerzıi rendszerek
Flash
3.17.9 Eseménykezelık MovieClip és Button esetén használható eseménykezelık: • onPress, onRelease, onReleaseOutside • onRollOver, onRollOut • onDragOver, onDragOut Csak MovieClip esetén: • onUnload • onEnterFrame • onMouseDown, onMouseUp • onMouseMove • onKeyDown, onKeyUp TextField esetén: • onChanged - csak billentyőzet valamely gombjának lenyomásakor lép mőködésbe. Ha programból változik egy TextField tartalma, akkor ennek figyelésére eseményfigyelıt kell létrehozni. • onSetFocus, onKillFocus Mezo.onChanged = function():Void{ trace("mezı: "+Mezo.text); };
3.17.10 Eseménykezelı hozzáadása Amennyiben egy eseménykezelı objektumot adunk a megfigyelt TextField típusú objektumainkhoz, a megfigyelt objektumot paraméterként visszakaphatjuk. Az alábbi kód egy Mezo és egy Mezo1 nevő szövegdobozba való billentyőlenyomást figyel.
62
Szerzıi rendszerek
Flash
var oListener:Object = new Object(); oListener.onChanged = function(tMegfigyelt:TextField):Void { trace("Megfigyelt szövege: "+tMegfigyelt.text); }; Mezo.addListener(oListener); Mezo1.addListener(oListener); AS2-ben a nyomógomb példánya nem kaphat példánynevet, ennél fogva nem másolható programból és nem rendelhetı hozzá eseménykezelı sem futás idıben. 3.17.11 Leszámolás Játékoknál, de olyan animációknál is, ahol fontos szerep jut az objektumok közti kölcsönhatásoknak, szükségessé válhat egy szimbólum, vagy maga a mozi által tartalmazott szimbólumok számbavétele, leszámolása. Erre az ad lehetıséget, hogy az objektum által tartalmazott szimbólumok a szimbólum nevébıl alkotott tömb elemeiként érhetık el. for(i in _root){ if(typeof(_root[i])=="movieclip"){ trace(_root[i].name) } }
3.18 ActionScript 3 (AS3) Az ActionScript 1.0 és ActionScript 2.0 (röviden AS1 és AS2) nyelvek nagyfokú hasonlóságot mutatanak, amely viszonylag természetes kialakulásuknak és fejlıdésüknek köszönhetı. Ezzel szemben az ActionScript 3.0 egy gyökeresen más nyelv, amely a Java és a C# mintájára készült. Számos hasonlatosság mellett megjelentek
63
Szerzıi rendszerek
Flash
benne a Java-hoz hasonlatos csomagok, amelyek a hatékony programfejlesztést szolgálják. Míg az AS1 és AS2 nyelven írt kódot az ActionScript Virtual Machine 1 (röviden AVM1), addig az AS3 nyelvő kódot az ActionScript Virtual Machine 2 (röviden AVM2) futtatja. Mindkét esetben 2 fordítási szakaszon kell átmenni a kódnak. Az elsı szakaszban a forrás egy bájtkódra fordítódik le. Ezt követi a valósidejő fordítás, röviden JIT (Just in Time), amelynek végeredménye már gépi kód. Az elsı szakasz kivitelezésére a Flex Builder szerkesztıt vagy a Flash fejlesztıi környezetét használhatjuk. Az ActionScript kód ilyenkor egy ActionScript bájtkóddá (ABC) alakul. Ahhoz, hogy futtatható legyen, be kell ágyazni egy bináris tárolófájlba, amelyet az swf kiterjesztés jelöl. Látható, hogy az AS3 szinte önálló életet él, a Flash CS3 csak egy, a számára alkalmas fejlesztı környezetek közül. A második szakasz kivitelezésére a Flash CS3 a következı, úgynevezett futásidejő környezeteket kínálja. 1. Flash Player Böngészıben, illetve önálló ablakban teszi lehetıvé a bájtkódra lefordított dokumentumokat. Nem fér hozzá a fájlrendszerhez és nem kezelhet ablakokat. Webes biztonsági szolgáltatásokat nyújt. 2. Adobe AIR Asztali gépen futtatja a Flash platformra fejlesztett alkalmazásokat. Nemcsak az swf formátumú, hanem a HTML és JavaScript segítségével elıállított fájlokat is támogatja. Hozzáfér az asztali gép erıforrásaihoz. Ablakkezelı és fájlrendszer-kezelı API-val rendelkezik. 3. Flash Lite Mobil eszközökön (pl. mobiltelefon) biztosítja az swf kiterjesztéső fájlok futtatását.
64
Szerzıi rendszerek
Flash
A futásidejő környezet több, mint a virtuális gép, amely csak a megfelelı ActionScript kód futtatását végzi.
3.18.1 Változók, értékek Új primitív típusok jelentek meg, úgy, mint int (egész) és uint (elıjeltelen egész) Deklarációban kötelezı a var kulcsszó használata. var x:int; var y:Number=3.14; Még feltételes utasításban sem lehet kétszer deklarálni ugyanazt a változót. AS3-ban minden változónak van alapértelmezett értéke, amely, ha a változó típusáról sem rendelkezünk a null vagy az undefined lehet. A következı táblázat a változók alapértelmezett értékeit mutatja típusonként. Típus Boolean Number Int Uint String Object
Érték False NaN 0 0 Null Null
A primitív típusok között automatikus típuskonverzió hajtódik végre futásidıben a String típus javára. Az automatikus típuskonverziókat jól ki lehet használni programozáskor.
65
Szerzıi rendszerek
•
•
Flash
Az üres string Boolean típusra való konvertálásakor false értéket kapunk, minden más szöveg esetén a konverzió eredménye true. A null objektum Boolean típusra való konvertálásakor false lesz az eredmény.
Az osztályváltozóknál eltőnt az aláhúzás karakter: _x helyett x, stb. Százalék helyett 0 és 1 közé esı törtet használ az AS3. Változó dinamikus szövegmezıhöz való hozzárendelését nem támogatja az AS3. 3.18.2 Alapértelmezett paraméterek használata függvényeknél Függvények deklarációjánál mód van a paraméterekhez alapértelmezett értéket rendelni. A függvény deklarációjánál ezek a paraméterek a paraméterek sorrendjében a többi paraméter után kell, hogy következzenek. Ha a függvény hívásánál ezek a paraméterek hiányoznak, akkor a függvényen belül alapértelmezett értékükkel szerepelnek. function f(x:int, y:int, z:int=3):void{ trace(x); trace(y); trace(z); } Hívás: f(1,2); Eredmény: 1 2 3
66
Szerzıi rendszerek
Flash
3.18.3 A … azaz a „rest” paraméter függvényeknél. A … után következı paraméter paraméterek változó hosszúságú tömbjét jelenti. function f(x:int, … args):void{ for(var:i=0; i<args.length; i++){ trace(args[i]) } } Hívás: f(0,1,2,3); Eredmény: 0 1 2 3
3.18.4 DisplayObject osztály AS3-ban a megjelenítést a DisplayObject osztály teszi lehetıvé. A megjelenítéshez nélkülözhetetlen tulajdonságokat (x, y, rotation, stb.) a DisplayObject osztálytól örökli a megjelenítendı. A megjelenítés úgy történik, hogy a megjelenítendıt hozzá kell adni a DisplayObject osztály leszármazottjához, a DisplayObjectContener osztályhoz. A megjelenési lista, a renderelendı objektumokat tartalmazza megjelenésük sorrendjében. Példány színpadra helyezése a szimbólum színpadra való vonszolásával történik. AS2-ben a programból való példányosítás csak egy, már a színpadon lévı példány másolásával volt lehetséges. AS3ban lehetıség van erre az ActionScript new utasítása segítségével is.
67
Szerzıi rendszerek
Flash
Tegyük fel, hogy egy kor nevő szimbólumunk van a szimbólumtárban. Ekkor az alábbi kódrészlet annak egy példányát hozzáadja a megjelenítendıkhöz. var labda:kor; addChild(labda=new kor()); 3.18.5 A Sprite osztály A Sprite osztály a MovieClip osztálynak egy csökkentett mőködéső változata. A Sprite egy olyan MovieClip, amelynek nincs idıvonala és elemei dinamikusan nem változtathatók. 3.18.6 Eseménykezelés Az eseménykezelık hasonlítanak a korábbiakhoz, de valamelyest megújultak. stage.addEventListener ( MouseEvent.CLICK, clickEsemeny ); function clickEsemeny ( event:MouseEvent ):void { var egerX:Number var egerY:Number egerX=event.target.mouseX; egerY=event.target.mouseY; }
3.18.7 Leszámlálás Az AS2-ben megszokott for-in típusú bejárása az objektumoknak itt is mőködik.
68
Szerzıi rendszerek
Flash
var myObject:Object = new Object() myObject.a = "elso" myObject.b = "masodik" for(var key:String in myObject){ var obj:Object = myObject[key] ..trace(key+"="+obj) } Lehetıség van azonban egy objektum listáról való elrejtésére is. Ezen kívül a for-each-in módszerrel az objektumok tartalma közvetlenül is elérhetı. A nemkívánatos konverziók elkerülése érdekében célszerő, ha a ciklusváltozó típustalan, azaz a deklarációban val:* szerepel. var myObject:Object = new Object() myObject.a = 1 myObject.b = "második" myObject.c = "harmadik" myObject.setPropertyIsEnumerable("b",false) for each(var val:* in myObject){ trace(val) }
69
Szerzıi rendszerek
Gyakorlatok
4 Gyakorlatok Ennek a fejezetnek a gyakorlatai AS2-re épülnek.
4.1 Rajzoljunk Napot
1. Válasszuk a kitöltés színének a narancssárgát, a határvonal legyen színtelen. 2. Kattintsunk az Ovál eszközre, majd a Shift gombot lenyomva rajzoljunk egy kört. (A Shift hatására biztosan kört és nem ellipszist kapunk.) 3. Válasszuk ki a vonal eszközt, és rajzoljunk vele egy kis háromszöget nem messze a kör fölé. Töltsük be ezt is narancssárgával. 4. Válasszuk ki az Nyíl eszközt. Kattintsunk kétszer a háromszögre, ennek hatására kiválasztjuk a háromszöget és a határát is. 5. Elıkészítjük a háromszög elforgatásait. Kattintsunk a Free Transform eszközre. Az ennek hatására a háromszög körül megjelenı szabályozók közül válasszuk ki a kis kört. Vonszoljuk a kis kört, azaz a példány origóját az általunk megrajzolt napkorong középpontjába.
70
Szerzıi rendszerek
Gyakorlatok
22. ábra Másolás és elforgatás 6. Másolás és elforgatás Edit\Copy másolás a vágólapra Edit\Paste in Place beillesztés az eredeti fölé Vigyük az egeret a szabályozókkal körülvett háromszög egyik külsı sarka közelébe úgy, hogy az egérmutató egy forgatást jelzı kis körré változzon. A Shift billentyőt lenyomva fogjuk meg és az egérrel vonszolva forgassuk el 45 fokkal a kijelölt alakzatot. 7. A 6 pontban leírtakat ismételjük addig, amíg a Nap mind a nyolc ága el nem készül. 8. Egy semleges helyre kattintva megszüntetjük a kijelölést. 9. Szín beállítása
71
Szerzıi rendszerek
Gyakorlatok
23. ábra Színek
a. A Color panelon válasszuk ki kitöltés színének megadását. b. A Radial típus kiválasztása után adjuk meg a beállítósáv házaihoz tartozó színeket. A bal szélsı házhoz tartozó szín lesz a kattintáshoz tartozó úgy nevezett középsı szín, a jobb szélsı szín pedig a kattintástól távoli szín. A beállított színezést az alsó téglalap mutatja. c. A Festékesvödör (Paint Bucket) eszközt használva kattintsunk a napkorongra, majd utána a sugarakat szimbolizáló háromszögekre.
4.2 Fogd és vidd 1. Jelöljük ki a Napot alkotó elemeket. 2. Alakítsuk moziklip szimbólummá. A nevét nem fogjuk használni. 3. A színpadon lévı objektum eseményeit kezeljük a következı módon. 72
Szerzıi rendszerek
Gyakorlatok
onClipEvent (mouseDown) { startDrag(this,true); } onClipEvent (mouseUp) { stopDrag(); } Az Actions panel megnyitása után a kód begépelésére két lehetıség kínálkozik. Az egyik, úgy nevezett Normál üzemmódban a Flash a kijelölt utasításoknak megfelelı őrlapokkal segíti a munkánkat. Ez a rész a szkriptet tartalmazó szöveges rész felett található. A másik, úgy nevezett Szakértı üzemmódban a kód szerkesztése ugyanúgy történik, mint egy szövegszerkesztıben. A két üzemmmód között a Script Assist gomb segítségével válthatunk. Az ActionScript utasításai az Actions panel bal oldalán mappákba csoportosítva találhatók. A leggyakrabban használt parancsok a Global Functions/Movie Clip Control illetve a Global Functions/Timeline Control mappákban helyezkednek el.
24. ábra Actions panel Normál módban A szkriptet a következı lépések segítségével hozhatjuk létre.
73
Szerzıi rendszerek
Gyakorlatok
1. A színpadon válasszuk ki azt az elemet, amelyhez a szkriptet rendelni szeretnénk. A jobb egérgomb hatására kinyíló helyi menübıl válasszuk ki az Actions pontot. Ekkor megnyílik az Actions - Movie Clip, Actions - Button vagy Actions - Frame panel, amelynek címe aszerint változik, hogy milyen elemhez szeretnénk szkriptet írni. 2. Kattinsunk kettıt az onClipEvent eseményen, majd az ablak alsó részén megnyíló listából válasszuk ki a mouseDown lehetıséget. 3. Álljunk a kapcsos zárójelek közé és az akciók közül kattintsunk kétszer a startDrag függvényen. A paraméterei legyenek this és true, az elsı azt jelenti, hogy a vonszolás erre a példányra fog vonatkozni, a true pedig a megragadás pontjának a regisztrációs pontot választja. 4. A szkript második része hasonló lépések egymásutánjaként kapható.
4.3 Átalakuló szöveg Készítsünk egy szövegnek egy másik szöveggé való átalakulását megjelenítı animációt. 1. Helyezzünk el egy szöveget a mozi elsı keretében. 2. Adjuk ki a Modify/Break Apart menüparancsot 3. Helyezzünk el egy kulcskeretet az idıvonal 15. cellájában. 4. A szöveges objektum tartalmát változtassuk meg, majd erre az objektumra is adjuk ki a Modify/Break Apart menüparancsot 5. A Window/Panels/Frame panel Tweening mezıjének értéke legyen Shape
4.4 Aktív nyomógomb Készítsünk olyan nyomógombot, amelyik az egérrel végzett mőveletek hatására változtatja megjelenését. 1. Készítsünk egy piros színő téglalapot a nyomógomb megjelenítésére.
74
Szerzıi rendszerek
Gyakorlatok
2. Az Insert/Convert to Symbol menüparancs segítségével alakítsuk szimbólummá gomb néven. 3. Válasszuk ki a szimbólumkönyvtárban a gomb szimbólumot. A helyi menü Edit parancsával váltsunk szimbólum szerkesztı üzemmódra. 4. Az Insert/Keyframe menüparanccsal helyezzünk el egy kulcskeretet a nyomógomb Over állapotába. 5. Színezzük át a téglalapot kékre. 6. Helyezzünk el egy kulcskeretet a Down állapotba. 7. A téglalapra alkalmazzuk a Modify/Transform/Scale and Rotate menüparancsot. Ha a Scale mezıbe 75 százalékot írunk, akkor a nyomógomb lenyomáskor kicsinyítve jelenik meg.
4.5 URL Készítsen egy nyomógombot, amelynek segítségével meg lehet nyitni egy honlapot 1. A Window/Common Libraries/Buttons menüparanccsal nyissa meg a közös könyvtárat 2. Válasszon ki egy nyomógombot és vonszolja a színpadra. 3. A gomb színpadon lévı példányát kiválasztva adja ki a Window/Actions menüparancsot. 4. A kinyílt ablakban helyezze el a következı szkriptet on (release) { getURL („http://www.gdf-ri.hu”, „_blank”); }
75
Szerzıi rendszerek
Gyakorlatok
25. ábra Actions - Button panel Normál módban Az on metódus a Global Functions/Movie Clip Control mappában, a getURL parancs pedig a Global Functions/Browser/Network mappában található. A fenti ablak a Normál módban kitöltendı mezıket mutatja. Szakértı módban a szkript begépelésével lehet célhoz érni. 5. A File/Publish menüparancs után kipróbálhatjuk honlapunkat.
4.6 Animált gomb létrehozása A nyomógomb nyilak által közre fogott felirata összezsugorodik akkor, ha az egérmutató a gomb fölé kerül. 1. A színpadon létrehozott „Felirat” szöveget tartalmazó szöveges objektumból készítsünk egy felirat nevő grafikus szimbólumot. Igazítsuk középre. 2. Készítsük el a jobbra illetve balra mutató grafikus szimbólumokat egy balra illetve jobbra mutató nyilat tartalmazó szöveges objektumból. Ezeket a szimbólumokat is igazítsuk középre. 3. Hozzunk létre egy új moziklipet, a neve legyen felirat_mc 4. Állítsunk be négy réteget fölülrıl lefelé a következı nevekkel akciok bal szoveg jobb 5. Helyezzük a bal nevő réteg elsı kockájába a jobbra nevő szimbólumot, a szoveg réteg elsı kockájába a felirat nevő szimbólumot, a jobb nevő réteg elsı kockájába a balra nevő 76
Szerzıi rendszerek
Gyakorlatok
szimbólumot. Ennek hatására a kockák kulcskockává alakulnak. A szöveget igazítsuk a színpad közepére. Rendezzük el ıket úgy, hogy a szöveg a két nyíl közé kerüljön, majd igazítsuk ıket egy vonalba és egyenletes távolságra. 6. A bal, szoveg és jobb nevő rétegek 10. celláit kijelölve az Insert/Keyframe menüparancs segítségével helyezzünk egy-egy kulcskockát a kijelölt cellákba. Ha a kijelöléskor a Control és Shift gombokat lenyomva tartjuk, több objektum együttes kijelölését érhetjük el. 7. A 10. pozícióban méretezzük át a szöveget. A nyilakat helyezzük köré, majd igazítsuk egyvonalba és egyenletes távolságra az objektumokat. 8. A bal, szoveg és jobb rétegek egy-egy közbülsı cellájának kijelölése után, a Modify/Panels/Frame panelon a Tweening mezı értéke legyen Motion. Ezzel a rétegekre köztesmozgást állítunk be. 9. Hogy az animáció ne ismétlıdjön újra meg újra, egy megállást kezdeményezı akciót rendelünk egy képkockához. Az akciók réteg elsı kockájára állva nyissuk meg a Window/Actions ablakot. A Basic Actions csoportból válasszuk a Stop akciót. Ekkor a kockánál lévı kis a bető jelzi a kockához rendelt akciót. 10. Az akciók réteg elsı kockáját vonszoljuk el a 10. helyre. Ezzel azt érjük el, hogy az animáció csak a végén áll meg. 11. A mozi színpadára váltva hozzunk létre egy új nyomógomb típusú szimbólumot. 12. Állítsunk be három réteget fölülrıl lefelé a következı nevekkel hang szoveg fo 13. A felirat nevő szimbólumot vonszoljuk a szoveg réteg Up állapotnak megfelelı pozíciójába, majd igazítsuk középre. 14. A fo réteg elsı, azaz Up állapotnak megfelelı pozíciójára állva rajzoljunk egy téglalapot, amit aztán a nyomógomb megjelenítésére fogunk használni. Igazítsuk középre. 15. A fo réteg azaz Over állapotnak megfelelı pozíciójára állva vonszoljuk a színpadra a felirat_mc moziklipet, majd igazítsuk középre. 77
Szerzıi rendszerek
Gyakorlatok
16. A fo réteg Hit állapotát kiválasztva rajzoljunk egy fehér színő fehér határú téglalapot, amely a találatok fogadását szolgálja. 17. Window/Common Libraries/Sounds könyvtárból vonszoljuk át a Visor Hum Loop hangmintát a saját szimbólum könyvtárunkba. A hang réteg Over állapotát kiválasztva helyezzünk el egy kulcskockát az Insert/Keyframe menüpont segítségével. Vonszoljuk a hangszimbólumot a színpadra. 18. Helyezzük el a gomb szimbólum egy példányát a mozi színpadán.
4.7 Pásztázó fényforrás Készítsünk egy olyan gombot, amelynek felirata az egér, mint egy fényforrás mozgásának megfelelıen válik láthatóvá. A feladat megoldása két réteg felhasználásával történhet. A felsı réteg tartalmazza a szöveget, amelyet maszknak kell beállítani. Ezen a maszkon keresztül látszik a fényfolt, amelyik az egér hatására mozog. 1. Legyen a mozi mérete 250x125, a háttér fekete 2. Az elsı réteg neve legyen text 3. Helyezzük el a Gábor Dénes szöveget a színpadon. A betüméret legyen 36, a szín fehér. 4. Vegyünk fel egy második réteget, neve legyen movie 5. Hozzunk létre egy kört kb. 80 átmérıvel. Mind a háttér mind a kitöltés legyen sárga (a fény színe). 6. Konvertáljuk a kört moziklippé. A szimbólum neve legyen huzo. 7. A moziklip példányának neve legyen huz 8. A movie réteg kulcskockájának eseményei közé vegyük fel a startDrag(„huz”, true) eseményt. A Click Mouse to Center jelölınégyzetet állítsuk be. 9. A text réteg kulcskockáját állítsuk be maszkra.
4.8 Villanó logo Készítsen logot, amely villanó hatást keltve jelenik meg. A feladat kapcsán megismert fogások: 78
Szerzıi rendszerek
Gyakorlatok
Importált grafika szétosztása rétegek között Gradiens típusú kitöltés létrehozása 1. A File/Import menüparanccsal importáljuk a logo grafikáját. 2. A réteg neve legyen alsó. 3. Hozzunk létre még két réteget kozepso illetve felso elnevezessel. 4. Az also rétegen elhelyezkedı grafikus objektumra adjuk ki a Modify/Break Apart menüparancsot. Minthogy grafikus objektumunk az importáláskor keletkezı grafikus szimbólum egy példánya, a parancs hatására megszőnik az objektum és a szimbólum közti kapcsolat és grafikánk szerkeszthetıvé válik. 5. Az Edit/Cut menüparanccsal vágjuk ki a grafikus objektum azon részét, amelyet ki akarunk vonni a villanó megjelenés hatása alól. 6. Az így kivágott részt az Edit/Paste in Place menüparanccsal illesszük be a felso réteg cellájába. 7. Válasszuk ki a kozepso panelt, hogy létrehozzuk a villanást kiváltó elemeket. 8. A Window/Panels/Mixer panelen állítsuk be a kitöltés színét (Fill Color) fehérre, a takarást (Alpha) nullára. A jobbra mutató kis nyíl hatására kinyíló menübıl válasszuk ki az Add Swatch menüpontot. 9. A Window/Panels/Fill panelon válasszuk a Linear Gradient értéket A Fill panel vízszintes kijelzıjének két szélsı helyét az alatta lévı nyílra kattintva aktivizálhatjuk. Ezt a nyíl felsı háromszögének fekete színe jelzi. Ilyenkor a kijelzıtıl jobbra lévı négyzet segítségével változtathatjuk meg ezen úgy nevezett kulcshelyek paramétereit. Az eredményt a kijelzıtıl balra lévı négyzet mutatja. 10 Mindkét szélsı helyen állítsunk be fehér színt és nulla alfa értéket, amelyet rácsháló jelez. 11. A Fill panel kijelzıjének közepére kattintva hozzunk létre egy újabb olyan helyet a kijelzın, amelynek értékeit beállíthatjuk. Ezen újabb kulcshely alatti nyílra kattintva állítsuk az itteni kitöltést átlátszatlanra.
79
Szerzıi rendszerek
Gyakorlatok
12. A fentiekben kialakított gradiens típusú kitöltés felhasználásával hozzunk létre egy téglalapot határ nélkül. A hatás érdekesebbé tételének érdekében téglalapunkat el is forgathatjuk. 13. A téglalapot a Modify/Group menüparanccsal alakítsuk csoporttá. 14. Vonszoljuk a téglalapot egy a következıkben létrehozandó köztesmozgás kiinduló helyzetébe. 15. Jelöljük ki a 20. kocka celláit és adjuk ki az Insert/Keyframe parancsot. 16. A kozepso réteg 15. cellájában vonszoljuk a téglalapot a köztesmozgás végsı helyzetébe. 17. A kozepso réteg elsı celláját kijelölve alakítsuk a cellasorozatot köztesmozgássá. 18. A kozepso réteg utolsó cellájához rendeljük hozzá a gotoAndPlay(1) akciót az animáció újbóli futásának elıidézéséhez.
4.9 Körök Készítsünk olyan animációt, amelyik egy felirat körül, az egér mozgásának hatására kis fölfújódó köröket jelenít meg. A szöveg minden betője fölé elhelyezünk egy olyan gombot, amelyik az egér hatására egy kis moziklipet indít el. A klip során egy kismérető átlátszó kör átalakul egy nagyobb körré. 1 Legyen a mozi mérete 500x100, a háttér zöld.
80
Szerzıi rendszerek
Gyakorlatok
2 Helyezzük el a „Gábor Dénes” feliratot a színpadon. A betőtípus legyen Courier New, betőméret 36, a szín fekete. Minden bető közé helyezzünk egy szóközt, a két szó között legyen két szóköz. 3 Hozzunk létre egy új grafikus szimbólumot, a neve legyen kor. Határa legyen fekete, a kitöltés átlátszó. Igazítsuk középre és legyen Alpha nullával egyenlı. 4 Készítsünk egy moziklip típusú szimbólumot, a neve legyen korok. 5 A moziklip elsı kockájára helyezzük el a kor szimbólum egy megfelelıen kicsi példányát 6 A moziklip 15. kockáját alakítsuk kulcskockává. A moziklip 15. kockájára vegyük fel a kor szimbólum egy nagyobb példányát. 7 Az elsı kockát választva, a Frame panel Tweening mezıjében állítsuk be a Motion értéket. 8 Jelöljük ki a 15-1 kockatartományt (így visszafelé) és helyezzük át a 2-16 kockatartományba. 9 Hozzunk létre egy atlatszo_gomb nevő nyomógomb típusú szimbólumot. Alakja legyen kör, legyen átlátszó. 10 A szimbólum akciói közül válasszuk ki a Play akciót, az esemény pedig legyen on (release) {rollover} 11 Helyezzük az atlatszo_gomb szimbólum egy példányát a moziklip elsı kockájára. Igazítsuk középre és legyen Alpha nullával egyenlı. 12 Az elsı kocka akciói közé vegyük fel a „stop” akciót. 13 A színpadon legyen az aktuális kocka a mozi elsı és egyetlen kockája. Helyezzük a korok moziklip példányait a felirat betői fölé.
4.10 Golyók 4.10.1 Megállítható és elindítható golyó A mozi mutasson egy guruló golyót és két nyomógombot. A mozi a stop nyomógomb segítségével leállítható, majd a start nyomógomb hatására folytatódik. 1. Célszerő a View/Grid/Show Grid és View/Grid/Snap to Grid parancsok segítségével a rácshálót illetve hozzá való igazítást bekapcsolni. 81
Szerzıi rendszerek
Gyakorlatok
2. Készítsen három réteget az idıvonalon gombok golyo hatter elnevezéssel. 3. A golyo rétegen az elsı cellában készítsen egy golyót a színpad bal szélén. Alakítsa grafikus szimbólummá golyo néven. 4. A 72. cellában helyezzen el egy kulcskeretet. A golyó példányát vonszolja a színpad jobb szélére. 5. Egy közbensı cellát kijelölve a Window/Panels/Frame panel Tweening mezıjének értéke legyen Motion. 6. A hatter rétegen helyezzen el egy vízszintes vonalat az alap érzékeltetésére. 7. Készítsen két nyomógomb szimbólumot, az egyiket start, a másikat stop néven. Helyezze egy példányukat a gombok réteg elsı cellájába. 8. A start nyomógombot kiválasztva kattintsunk kettıt a Window/Actions menüparancs hatására megnyíló ablakban megjelenı Play akción.
9. A stop nyomógomb esetében hasonlóan járhatunk el, csak ebben az esetben a Stop akción kell duplán kattintanunk.
82
Szerzıi rendszerek
Gyakorlatok
4.10.2 Példa moziklip alkalmazására. Induljunk ki az elızı filmbıl. Alakítsuk át a filmet úgy, hogy a golyó mozgása egy moziklipben legyen. 1 A Shift és Ctrl billentyők használatával jelöljük ki a golyo és a hatter rétegek kereteit. 2. Az Edit/Cut Frames menüparancs segítségével vágjuk ki a kijelölt kereteket. 3. Hozzunk létre egy új moziklip szimbólumot golyo_mc néven. Álljunk rá a moziklip elsı keretére. 4. Az Insert/Paste Frames menüparancs segítségével illesszük be a kivágott kereteket. 5. A szimbólumkönyvtárban álljunk rá a golyo_mc moziklipre. A Window/Panels/Instance menüparancs hatására megnyíló ablakban adjuk a klipnek a moziklip nevet. 6. A fıidıvonalon töröljük a hatter nevő réteget. 7. Vonszoljuk a golyo_mc nevő moziklipet a fıidıvonal golyo rétegének elsı keretébe. 8. Mind a gombok, mind a golyo réteg elsı utáni kereteit töröljük az Edit/Remove Frames menüpont segítségével. 8. A nyomógombok szkriptjeit módosítsuk a következıképpen. Jelöljük ki valamelyik nyomógomb színpadon látható példányát. Vigyázat, kettıs kattintással nem a példányt, hanem a szimbólumot jelöljük ki. A Window/Actions hatására megnyíló ablak jobb oldalán található szkriptet töröljük ki. Ezután kettıs kattintás a with akción, 83
Szerzıi rendszerek
Gyakorlatok
majd az ablak jobb alsó sarkában található áthúzott karikára kattintva meghatározhatjuk, hogy az akció esetünkben a moziklip nevő objektumra vonatkozzon. Végül a start nyomógomb esetén a play, a stop nyomógomb esetén a stop akciót választva a következı szkripteket kapjuk.
4.10.3 Példa moziklipbe ágyazott moziklipre A moziklipek egymásba ágyazása párhuzamosan, de nem szinkronban futó moziklipek megvalósítását teszi lehetıvé. A moziklip alkalmas arra, hogy a színpad egész felületén érzékelje a billentyőzet egy tetszıleges gombjának lenyomását. Induljunk ki az elızı filmbıl. A film alsó golyója, hasonlóan az elızı filmhez, elindítható illetve megállítható a start illetve stop gombokkal. 84
Szerzıi rendszerek
Gyakorlatok
A beágyazott moziklip által megjelenített felsı golyó a billentyőzet egy tetszıleges gombjának a lenyomásával léptethetı. 1. Készítsük el a golyo2 nevő grafikus szimbólumot. 2. Hozzunk létre egy golyo2_mc nevő moziklipet. A moziklip felsı rétegének neve legyen akciok, az alatta lévı réteg neve legyen golyo2. 3. A golyo2 rétegben építsünk fel egy kockánkénti animációt úgy, hogy a golyót a színpad jobb oldaláról fokozatosan átmozgatjuk a bal oldalra. 4. Az akciok rétegnek az utolsót kivéve minden cellájához rendeljük a stop () akciót. Az utolsó cellához rendeljük a gotoAndPlay (1) akciót, amivel a moziklip ismételt lejátszását tesszük lehetıvé. 5. A jelenetre váltva, csak a megértés megkönnyítéséért, a golyo nevő rétegnek adjuk a golyok nevet. 6. Helyezzük el a golyo2_mc szimbólum egy példányát a fıidıvonal golyok rétegének elsı cellájában. 7. Készítsünk egy billentyu nevő moziklip szimbólumot. A moziklip egyetlen objektuma a színpad közepére kerülı „Nyomjon meg egy gombot a billentyőzeten” felirat legyen. 8. Vonszolással helyezzük a moziklip egy példányát a fıidıvonal gombok rétegének elsı cellájába. 9. A billentyu szimbólum példányához rendeljük a következı szkriptet. onClipEvent (keyDown) { with (_root.moziklip.moziklip2) { nextFrame(); } } Ezt megvalósíthatjuk szakértı módban (Expert Mode) begépeléssel.
85
Szerzıi rendszerek
Gyakorlatok
Normál módban (Normal Mode) ugyanezt a kódot menük segítségével állíthatjuk elı. A két mód között a Window/Actions menüparancs hatására megnyíló ablak jobb felsı sarkában található jobbra mutató kis háromszög segítségével válthatunk. Hogy éppen melyik módban vagyunk, azt az ablak jobb alsó sarka mutatja. Ha egy ikont (áthúzott karika) látunk csak, akkor szakértı módban, míg két ikon esetén normál módban vagyunk.
4.11 Mezı Készítsünk olyan két kockából álló animációt, amelyik az elsı kockán bekéri a felhasználó vezeték- és keresztnevét, majd a második kockán együtt kiírja azokat. 1. Hozzunk létre egy szöveges objektumot az elsı kulcskockán „Vezetéknév:” tartalommal. 2. Tıle jobbra készítsünk egy rögzített hosszúságú szöveges objektumot. A Text/Options menüpont hatására megnyíló ablakban válasszuk az Input Text opciót, a Variable mezı értéke legyen vezeteknev. 3. Ismételjük meg az elsı két lépést „Keresztnév:” tartalommal, a beviteli mezı neve legyen keresztnev. 4. Helyezzünk el egy jobbra mutató nyilat ábrázoló nyomógombot.
86
Szerzıi rendszerek
Gyakorlatok
5. A második cellába szúrjunk be egy kulcskeretet. A kulcskockán helyezzünk el egy szöveges objektumot „Teljes név:” tartalommal. Tıle jobbra egy rögzített hosszúságú szöveges mezıt Dynamic Text választással, a mezı neve legyen teljesnev. 6. Helyezzünk el egy visszafelé mutató nyilat ábrázoló nyomógombot. 7. Az elsı kockához rendeljük a stop () akciót, a másodikhoz a következı szkriptet. stop (); teljesnev = vezeteknev+" "+keresztnev; 8. Az elsı illetve a második kockán lévı nyomógombhoz rendeljük a következı szkripteket on (release) { gotoAndPlay (2); } on (release) { gotoAndPlay (1); }
4.12 Hóesés 1 Nyissunk meg egy új mozit, vagy készítsünk egy új havazas nevő réteget egy már meglévı mozi fölé. Ha új filmet készítünk, akkor a legfelsı réteg alá tehetünk egy hatter nevő réteget is. 2 Készítsük el a hópehely grafikáját a havazas rétegen. Helyezzük a grafikát a színpad fölé egy kissé balra. 3 Alakítsuk moziklip típusú szimbólummá, a szimbólum neve legyen pehely 4 Másoljuk le a havazas rétegen lévı most már moziklip típusú példányt egy kissé jobbra.
87
Szerzıi rendszerek
Gyakorlatok
5 A Window/Panels/Instances menüpont segítségével a pehely szimbólum ezen új példányának adjuk a hopehely nevet.
6 A baloldali pehely helyi menüjébıl válasszuk ki az Actions menüpontot. Az ablak jobb felsı sarkában lévı jobbra mutató háromszögre kattintva, az ekkor kinyíló párbeszédablakban válasszuk az Expert Mode lehetıséget. Ez azt eredményezi, hogy szövegként szerkeszthetjük az ActionScript nyelven írt akciókat. Az ekkor kinyíló ablakba írjuk be a következı szkriptet. 88
Szerzıi rendszerek
Gyakorlatok
onClipEvent (load) { clipCount = 0; } onClipEvent (enterFrame) { checker = random(100); if (checker<=8) { clipCount += 1; duplicateMovieClip (_root.hopehely, „hopehely”+clipCount, clipCount); if (clipCount == 100) { clipCount = 1; } } } 7 A második, kissé jobbra lévı hopehely nevő példány esetében járjunk el az elızı pontban leírtak szerint. A kinyíló ablakba írjuk be a következı szkriptet. onClipEvent (load) { this._x = random(300); this._y = -10; yCenterSpin = 0; xCenterSpin = this._x+100; yscaleIt = 1; xscaleIt = 1; this._yscale=100; this._xscale=100; } onClipEvent (enterFrame) { if (this._yscale<=-100) { yscaleIt *= -1; } else if (this._yscale>=100) { yscaleIt *= -1; } 89
Szerzıi rendszerek
Gyakorlatok
if (this._xscale<=-100) { xscaleIt *= -1; } else if (this._xscale>=100) { xscaleIt *= -1; } if (random(10)<=1) { yscaleIt *= -1; } if (random(10)<=1) { xscaleIt *= -1; } if (yscaleIt>0){ this._rotation+=5; } if (yscaleIt<0){ this._rotation-=5; } this._yscale -= yscaleIt*5; this._xscale -= xscaleIt*5; yCenterSpin += 3; this._y += yVelocity; this._x += xVelocity; if (this._y>=yCenterSpin) { yVelocity -= 1; } else if (this._y<=yCenterSpin) { yVelocity += 1; } if (this._x>=xCenterSpin) { xVelocity -= 1; } else if (this._x<=xCenterSpin) { xVelocity += 1; diff = yCenterSpin-this._y; yVelocity += diff/200; diff = xCenterSpin-this._x; zVelocity += diff/200; } 90
Szerzıi rendszerek
Gyakorlatok
if (this._y>=800) { this.removeMovieClip(); } }
91
Szerzıi rendszerek
Irodalom
5 Irodalom [1] Adobe: Adobe Flash CS3 professional - Tanfolyam a könyvben, Perfact kiadó 2008. [2] Colin Moock: ActionScript 3.0 a gyakorlatban, Kiskapu Kft. 2008 [3] Bonnie Blake: Macromedia Flash 5, Panem Budapest 2001 [4] Sikos László: Macromedia Flash MX 2004 és 8 verziók, BBS-Info Könyvk. és Inform. Kft. 2005 [5] Robert Reinhardt - Jon Warren Lentz: Flash 5 Biblia I-II, Kiskapu Kft 2001 [6] Vásárhelyi Péter - Szegı Tamás: Flash 5 kézikönyv, Horváth és Fellner Kft
Internetes hivatkozások http://www.flashkit.com/tutorials/ http://www.swf.hu http://www.actionscript.org/ http://hu.wikipedia.org/wiki/Adobe_Flash
92