Macromedia Director MX



Hasonló dokumentumok
VARIO Face 2.0 Felhasználói kézikönyv

Prezentáció, Prezentáció elkészítése. Nézetek

A LOGO MOTION TANÍTÁSA

POSZEIDON dokumentáció (1.2)

ELSŐ LÉPÉSEK A SZÁMÍTÓGÉPEK RODALMÁBA AMIT A SZÁMÍTÓGÉPEKRŐL TUDNI ÉRDEMES

Oktatási segédanyag. Weboldalszerkesztési gyakorlatok

Választó lekérdezés létrehozása

Táblázatok. Táblázatok beszúrása. Cellák kijelölése

A webáruház kezdőlapján háromféle diavetítés beállítására van lehetőség:

VarioFace dokumenta cio

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

A Paint program használata

Az importálás folyamata Felhasználói dokumentáció verzió 2.1.

HF-DVR H.264 Hálózati Rögzítő. Felhasználói kézikönyv

ReszlAd fájl, kitöltési útmutató:

Táblázatkezelés 2. - Adatbevitel, szerkesztés, formázás ADATBEVITEL. a., Begépelés

ÁNYK53. Az Általános nyomtatványkitöltő (ÁNYK), a személyi jövedelemadó (SZJA) bevallás és kitöltési útmutató együttes telepítése

Online naptár használata

Műveletek makrókkal. Makró futtatása párbeszédpanelről. A Színezés makró futtatása a Makró párbeszédpanelről

Ablak és ablakműveletek


Akciók, diavetítés. 1. ábra Akciógombok. A lap két regiszterfülből áll, ezek a Kattintásra és az Áthaladáskor. Nézzük meg először az elsőt!

Gyakorló 9. feladat megoldási útmutató

CIB Internet Bank asztali alkalmazás Hasznos tippek a telepítéshez és a használathoz Windows operációs rendszer esetén

Diagram létrehozása. 1. ábra Minta a diagramkészítéshez

Készítsen négy oldalas prezentációt az E CD bolt számára! Tervezze meg az emblémáját!

A Windows az összetartozó adatokat (fájlokat) mappákban (könyvtárakban) tárolja. A mappák egymásba ágyazottak.

A Novitax ügyviteli programrendszer első telepítése

Egyszerűbb a Google keresőbe beírni a Sharepoint Designer 2007 letöltés kulcsszavakat és az első találat erre a címre mutat.

Rajz 01 gyakorló feladat

Térkép megjelenítése

A számítógépes adatgyűjtő program használata

1.1.1 Dátum és idő függvények

Dokumentum létrehozása/módosítása a portálon:

Digitális aláírás általános telepítése és ellenőrzése

Képek és grafikák használata

NINJA kezelői program letöltése és installálása

Rajz 02 gyakorló feladat

Lapműveletek. Indítsuk el az Excel programot és töröljük ki a Munka1 nevű munkalapot!

A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.

Blog (Google Blogger) használata

EDInet Connector telepítési segédlet

1. kép. A Stílus beállítása; új színskála megadása.

Importálás. más típusú (pl:.imp,.xml,.xkr,.xcz) állomány beimportálása a nyomtatványkitöltő programba

ContractTray program Leírás

Szöveges műveletek. Mielőtt nekikezdenénk első szövegünk bevitelének, tanuljunk meg néhány alapvető műveletet a 2003-as verzió segítségével:

ivms-4200 kliensszoftver

HVK Adminisztrátori használati útmutató

Diagram formázása. A diagram címének, a tengelyek feliratainak, jelmagyarázatának, adatfeliratainak formázása

18. Szövegszerkesztők

Rövid leírás a Make Your Mark szoftver használatához

DKÜ ZRT. A Portál rendszer felületének általános bemutatása. Felhasználói útmutató. Támogatott böngészők. Felületek felépítése. Információs kártyák

CellCom. Szoftver leírás

Szilipet programok telepítése Hálózatos (kliens/szerver) telepítés Windows 7 operációs rendszer alatt

1.A. feladat: Programablakok

1. A berendezés programozása

Mechatronika segédlet 3. gyakorlat

ArcGIS 8.3 segédlet 5. Dr. Iványi Péter

DebitTray program Leírás

AZ N-WARE KFT. ÁLTAL ELEKTRONIKUSAN ALÁÍRT PDF DOKUMENTUMOK HITELESSÉGÉNEK ELLENŐRZÉSE VERZIÓ SZÁM: 1.3 KELT:

Szöveges értékelés. Magiszter.NET. Elérhetőségeink: Tel: 62/ ; Fax: 62/ Honlap:

Tartalom jegyzék 1 BEVEZETŐ SZOFTVER ÉS HARDVER KÖVETELMÉNYEK 2 2 TELEPÍTÉS 2 3 KEZELÉS 5

Ismerkedés az új felülettel

Duál Reklám weboldal Adminisztrátor kézikönyv

Thermo1 Graph. Felhasználói segédlet

FELHASZNÁLÓI ÚTMUTATÓ

M-Fájlok létrehozása MATLAB-ban

cím létrehozása

E-Freight beállítási segédlet

Maszkok 197 Maszkrétegek 197 Maszkolt szöveg 199 Szövegmaszk 202 Izzó szöveg 204 Negatív maszk 205 Animált maszk 206 Animált Kör 208

A TERC VIP költségvetés-készítő program telepítése, Interneten keresztül, manuálisan

Novell és Windows7 bejelentkezési jelszavak módosítása

Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba

Pénzintézetek jelentése a pénzforgalmi jelzőszám változásáról

Prezentáció, Diagramok, rajzolt objektumok. Szervezeti diagram

Diagram készítése. Diagramok formázása

CMS videó megjelenítő szoftver használata

Dokumentáció. IT Worx. Web eszközök Hír box. 1. Első lépések

HTML é s wéblapféjlészté s

Kéretlen levelek, levélszemét, spamek kezelése a GroupWise-ban

Cikktípusok készítése a Xarayában

TERC V.I.P. hardverkulcs regisztráció

Java telepítése és beállítása

Alapvető beállítások elvégzése Normál nézet

A mappák használata. Mappa létrehozása

FITNESS SYSTEM Telepítési útmutató

Tartalomjegyzék. 1. Belépés a vásárolt e-könyvek eléréséhez. 2. A könyvespolc. 3. Az olvasó nézet

DAT adatcserefájl AutoCAD MAP DWG mapobject konvertáló program dokumentáció

Képek és grafikák. A Beszúrás/Kép parancsot választva beszúrhatunk képet ClipArt gyűjteményből, vagy fájlból. 1. ábra Kép beszúrása

Információs technológiák 1. Gy: HTML alapok

ServiceTray program Leírás

KIRA. KIRA rendszer. Telepítési útmutató v1

Heti Hálózati Hírek kapcsolt dokumentumok megnyitása

Az FMH weboldal megnyitásakor megjelenő angol nyelvű üzenetek eltüntetése

Technikai információk fejlesztőknek

Képek a HTML oldalon

KÉPERNYŐKÉP KÉSZÍTÉSE

6. Alkalom. Kép ClipArt WordArt Szimbólum Körlevél. K é p

PDF. Tartalomjegyzék 1/21

Átírás:

Hallgatói segédlet a Macromedia Director MX használatához kézirat www.adobe.com

Ez a jegyzet a Macromedia Director MX használatát muatatja be, követve az órai tananyag tematikáját. A jegyzet emiatt hiányos, csak azokat a témaköröket és csak olyan mélységben tárgyalja, amelyeket és ahogyan azokat a gyakorlatokon feldolgozunk. A jegyzet kézirat. Nincs lektorálva, átnézve, emiatt mindenféle hibák előfordulhatnak benne. Éppen ezért a vizsgára való felkészülést legfeljebb kiegészíti, de az órai jegyzeteket semmiképpen sem pótolja. Az esetleges hibákért elnézést kérek, de mivel a jegyzet lektorálatlan, az általuk esetlegesen okozott kellemetlenségekért nem vállalok felelősséget. Kérem, hogy ezt a jegyzet használatakor tartsák szem előtt! Ugyanakkor minden észrevételt szívesen várok a tpeter@ektf.hu címre. Tömösközi Péter

TARTALOMJEGYZÉK BEVEZETÉS A MACROMEDIA DIRECTOR MX HASZNÁLATÁBA 5 A képernyő elemei 5 A színpad (Stage) 7 A szereposztás (Cast) 8 A forgatókönyv (Score) 8 SZKRIPTEK 12 Szkripttípusok 13 Mikor kapnak vezérlést a különböző típusú szkriptek? 13 Milyen eseményeket kezelnek az eseménykezelők? 14 Összefoglalás 15 KÉSZÍTSÜK EL AZ ELSŐ PREZENTÁCIÓT! 16 A mozi létrehozása és beállításai 16 A szereplők importálása 17 A prezentáció összeállítása 18 A háttér elhelyezése 18 A feliratok elhelyezése 19 Állítsuk meg a lejátszófejet! 21 A helyszínekhez tartozó oldalak elkészítése 22 Tegyük interaktívvá a prezentációt! 24 Utolsó simítások 25 A háttérzene és a vizuális effektusok beállításai 26 A prezentáció publikálása 26 Projector készítése 26 Shockwave-állomány készítése 27 KULCSKÉPKOCKÁK ALKALMAZÁSA 28 Elhalványodik a háttérkép 28 Kulcsképkockát tartalmazó sprite-ok hosszának módosítása 30 Sprite-ok mozgatása a színpadon 30 Sprite-ok nagyítása, forgatása, megdöntése 32 ANIMÁCIÓ 32 Filmciklus készítése 32 Animált GIF felhasználása 33 Mozgó sprite pályájának beállításai 33 Real-time recording 34 ROLL-OVER GOMBOK KÉSZÍTÉSE 37 A mouseenter és mouseleave események kezelése 37 A mousedown esemény kezelése 38 A BILLENTYŰZET KEZELÉSE LINGO-SZKRIPTEKBŐL 40 Billentyűkódok meghatározása 40

SPRITE MOZGATÁSA BILLENYŰZET SEGÍTSÉGÉVEL 41 Az animált GIF tulajdonságainak beállítása 41 Sprite helyének változtatása Lingo-szkriptben 42 Animált GIF tükrözése és megállítása 42 SPRITE-OK MEGJELENÍTÉSE LINGO-SZKRIPTEKKEL 43 A puppet csatornák 43 KÉPERNYŐEFFEKTUSOK ÉS ZENE KEZELÉSE SZKRIPTEKBEN 45 A prezentáció beállításai 45 A startmovie eseménykezelő 46 Zenecsatornák vezérlése Lingo-szkriptekből 46 Zene lejátszása, szüneteltetése, megállítása 47 Hangerő 47 A billentyűzetkezelő szkript 47 A puppettransition parancs 49 Még egyszer a hangerőről 49 TESZT KÉSZÍTÉSE DIRECTORRAL 49 4

Bevezetés a Macromedia Director MX használatába A Macromedia Director MX vizuális prezentációk készítésére alkalmas szoftver, mely számos szöveg-, álló- és mozgókép-, hang- és videofájl-formátumot támogat, így kitűnően alkalmas multimédiás prezentációk létrehozásához. Az elkészült prezentációkból kétféle kimenet állítható elő. Az egyik lehetséges kimenet a Projector, amely egy önállóan indítható EXE-állomány. A projector-állományok semmilyen egyéb kiegészítő állományt nem igényelnek a futtatáshoz (pl. DLL-ek, stb.), így elegő csupán ezt az egyetlen állományt a célgépre másolni, és az máris futtatható lesz, telepítést sem igényel. (Megyjegyzés: nagy méretű, sok médiaelemet tartalmazó prezentációk esetében nem ez az optimális módszer, mivel az így készített EXE-fájl mérete gigantikus is lehet, amely a futtatást igencsak lassíthatja.) A másik lehetőség a prezentációk publikálására a Shockwave-formátum (.DCR), amely hasonlóan egy Flash-mozihoz weboldalakba ágyazható. Ha így publikáljuk kész prezentációnkat, a Director elkészíti a DCR-fájlt, illetve azt a HTML-kódot, amelyet weboldalunkba ágyazva a prezentáció lejátszható. Természetesen ahhoz, hogy ezeket a DCR-állományokat le tudjuk játszani egy számítógépen, szükséges egy böngésző, mely megjeleníti a mozit tartalmazó weboldalt, illetve az adott gépen (tehát a kliensoldalon) egy megfelelő lejátszóprogramra, egy Shockwave-playerre. Ha a weboldalba azt a HTML-kódot ágyazzuk be, amit a Director hoz létre a prezentáció publikálásakor, akkor ismét csak a Flash-mozikhoz hasonlóan abban az esetben, ha a lejátszó nincs telepítve az adott gépen, az kérésre automatikusan letöltődik az Adobe webszájtjáról és egy-két lépés után automatikusan fel is telepítődik a gépre. Shockwave-player minden gyakori operációs rszerhez (illetve böngészőhöz) létezik, így gyakorlatilag elmondható, hogy a publikált prezentáció bármilyen gépen lejátszható. A képernyő elemei A Directorban egy prezentáció készítésekor azt kell elképzelnünk, mintha egy színházi előadást (vagy éppen mozifilmet) készítenénk. Az előadás maga a prezentáció, melyben szereplők (cast member) jelennek meg. A szereplőket a szereposztás (cast) tartalmazza. A szereplők a színpadon (stage) jelennek meg, ez gyakorlatilag az az ablak, amelyben a prezentáció futni fog. Hogy melyik szereplő mikor jelenjen meg és meddig legyen látható a színpadon, az a forgatókönyv (score) segítségével szabályozható. Ahhoz, hogy egy szereplő megjelenhessen a színpadon, a forgatókönyvben hozzá kell relnünk egy sprite-ot. Egy sprite egy időben egy szereplőt jelenít meg a színpadon. A forgatókönyvben a sprite-okat csatornákon (channel) helyezhetjük el. A csatornák száma alapértelmezés szerint 150, ami azt jelenti, hogy egyszerre 150 sprite (vagyis szereplő a szereposztásból) jelenhet meg a színpadon (azaz a képernyőn). Ez egyrészt szükségtelenül nagy szám, egyszerre valószínűleg nincs szükség ennyire a képernyőn, az elégedetlenkedők számára azonban jó hír, hogy ez a szám még növelhető is. A forgatókönyv hossza pedig Lejátszáskor a forgatókönyön elindul a lejátszófej, melynek sebességét a prezentáció alatt bármikor meg lehet változtatni. A színpadon azok a sprite-ok fognak látszani, amelyek fölött a mozgó lejátszófej éppen elhalad. A sprite-ok számos tulajdonsággal relkeznek, meghatározzák pl. a megjelenített szereplő helyzetét a színpadon, vagy pl. annak nagyságát, háttérszínét, láthatóságát, stb. Az, hogy egy sprite melyik szereplőt jeleníti meg, szintén csak egy tulajdonság, amelyet hasonlóan a fentiekhez futás közben is meg lehet változtatni. Más szóval: egy sprite-nak nem kell feltétlenül mindvégig ugyanazt a szereplőt megjelenítenie. Ügyetlen analógiával elképzelhető ez a dolog úgy is, mintha egy színész dolga csak annyi len- 5

ne, hogy a szereposztás egyik szereplőjének a ruhájába bújva kiáll a színpadra, így jelenítve meg a színdarab egyik szereplőjét. Adott pillanatban aztán hirtelen átöltözik, és máris egy másik szereplőt jelenít meg. (A színészet ennél azért nyilvánvalóan több!) A lényeg tehát az, hogy nem szabad egy sprite-ot feltétlenül egy adott szereplővel azonosítani. Egyrészt semmi akadálya, hogy egy szereplőhöz több sprite-ot is rejünk, ami azt eredményezi, hogy az adott szereplő több példányban is megjelenik a színpadon, másfelől gyakran szükség lehet arra, hogy egy sprite-hoz relt szereplő megváltozzon, azaz a képernyő ugyanazon pontján egy sprite egyszercsak egy másik szereplőt mutasson meg. Ezt a lehetőséget a roll-over gombok készítéséről szóló fejezetben alaposan ki fogjuk használni. 1 2 3 1 A színpad (Stage), 2 A forgatókönyv (Score), 3 A szereposztás (Cast) A képernyőn a fenti ábrán látható három képernyőrészt célszerű mindig bekapcsolva tartani, még ha ez néha kissé nehézkesen oldható is meg. Ha valamit mégis ki (vagy be) szeretnénk kapcsolni, a Window menüt kell használnunk. A képernyő bal szélén látható a Director eszköztára (Tools), jobb oldalon pedig olyan paletták, amelyeken a prezentáció különböző beállításait tehetjük meg, illetve egyéb segédszolgáltatásokat találunk. Ezek között legfelelül látható a Property Inspector, mely az éppen aktuálisan kijelölt objektum (ami lehet pl. a teljes mozi, annak egy szereplője, vagy egy sprite stb.) tulajdonságait jeleníti meg. Ezt is célszerű bekapcsolva tartani nem is lehet kikapcsolni. Elrejteni lehet csak, ehhez a paletta szélét jelző függőleges keret közepén elhelyezett nyilat kell használnunk: Lássuk most az egyes képernyőelemek jellemzőit részletesen! 6

A színpad (Stage) Ahogyan azt korábban leírtuk, a prezentáció szereplői a színpadon jelennek meg. Ez a kijelentés két kiegészítést igényel. Egyrészt egy prezentációban felhasználhatunk zenéket, illetve egyéb audio-fájlokat, de ezek nyilvánvalóan nem a színpadon fognak megjelenni, hanem a hangszórókon, headseteken lesznek hallhatók. Ennek megfelelően nem is azokon a csatornákon kell az majd őket lejátszó sprite-okat elhelyeznünk, ahol a vizuális elemeket (álló- és mozgóképeket, szövegeket). A zenecsatornák használatáról részletesen olvashatunk a transitionöket bemutató fejezetben. A másik kiegészítés a vizuális elemeket megjelenítő sprite-okhoz kapcsolódik. Nem pontos az az állítás, hogy egy sprite mindig megjelenít egy adott szereplőt, ugyanis mint később, az animációs fejezetben látni fogjuk egy sprite elhelyezhető a színpad hasznos részén kívül is, úgymond a takarásban. Ilyenkor a képernyőn természetesen nem fog látszani, annak ellenére, hogy a forgatókönyvben szerepel. Ott lesz, csak nem fog látszani: képzeljük azt, hogy a prezentációt futtató ablakon kívül van. Ennek akkor vehetjük majd hasznát, ha egy sprite-ot szeretnénk bemozgatni, beúsztatni a képernyőre. Mint később látni fogjuk, a sprite-okat igen egyszerűen lehet mozgatni a színpadon, illetve a takarásból a színpadra, vagy a színpadról a takarásba. 2 2 1 1 A színpad hasznos része, amit ide helyezünk, az látszani fog a prezentáció futása során 2 Ezek a részek takarásban vannak. Amit ide helyezünk, az nem fog látszani a prezentáció futásakor, de a prezentáció ugyanúgy tudja vezérelni, mint a látható médiaelemeket A színpad ablakának alján, a nagyítás fokának és a vízszntes gördítősávok alatt a vezérlőpult (Control Panel) fontosabb nyomógombjai láthatók. A prezentáció futása ezekkel a gombokkal is vezérelhető. A színpad (és a teljes prezentáció) beállításai a Property Inspectoron találhatók. Ahhoz, hogy ezeket beállíthassuk, először kattintsunk egyet a színpad ablakára, majd keressük a Property Inspectoron a Movie fület: 7

Lássuk ezek közül a fontosabbakat: Stage Size a színpad mérete pixelekben. Location a prezentációablak bal felső sarkának koordinátái a képernyő bal felső sarkához képest. Ennek publikálás után vagy teljes képernyős futtatás után van jelentősége. Mindkét fenti érték beírással is megadható, vagy a beviteli mezők melletti nyílra kattintva kiválasztással is beállítható. Channels a forgatókönyv csatornáinak száma. Color a színpad háttérszíne. Megadása a HTML-ben ismert módon lehetséges, illetve a beviteli mező melletti kiválasztó eszközre kattintva is megtörténhet. A szereposztás (Cast) Amint korábban olvashattuk, a prezentációban felhasználni kívánt médiaelemeket a szereposztásba kell importálnunk, mielőtt fel akarjuk azokat használni. Kiegészítésként megjegyezzük, hogy a Director arra is kínál lehetőséget, hogy bizonyos állományokat anélkül is felhasználjunk egy prezentációban, hogy azokat a szereposztásba importálnánk, illetve egy prezentációhoz több (külső) szereposztás is relhető. Mint azt később majd látni fogjuk, a szereposztásba nem csak olyan médiaelemek kerülhetnek be, amelyeket oda beimportálunk, hanem a Director által létrehozott szereplők is (pl. nyomógombok, vonalak, síkidomok, szövegek, transitionök, szkriptek, stb.). A szereposztásnak kétféle nézete van, melyek között az ábrán jelölt gombbal lehet választani. Mellette a két nyíllal az előző ill. következő szereplő tehető aktuálissá (ugyanezt kattintással is megtehetjük). Ezek mellett az aktuális szereplő neve látható illetve adható meg. Az ábra egy üres szereposztást mutat. Minden szereplő relkezik egy sorszámmal, és kaphat egy nevet is. Ha egy szereplő nevet kap, a forgatókönyvben elhelyezett sprite-ján ez a név jelenik meg. Ha egy szereplőt nem nevezünk el, a forgatókönyvben a sprite-ja a szereposztásbeli sorszámát fogja mutatni. A szereplők importálásához valamelyik szereplőhelyre kell kattintanunk jobb gombbal, majd a helyi menüből válasszuk az Import menüpontot. Egyszerre több akár különböző fájltípusú szereplő is beimportálható. Fontos tudni, hogy mindig azt a fájlt importáljuk arra a szereplőhelyre, amin kattintottunk, amelyre utoljára kattintunk több fájl kijelölésénél. A többszörös fájlkijelölés a szokásos módon, a Ctrl és a Shift gombok használatával, illetve az egérrel történő bekeretezéssel történhet. A forgatókönyv (Score) A szereplők megjelenítésének (lejátszásának) egyik módja, ha elhelyezzük őket a forgatókönyvben. Egy másik módszer, ha szkriptekkel vezéreljük őket. Ebben az esetben akár úgy is létrehozhatunk működőképes prezentációt, hogy a forgatókönyv teljesen üres. A harmadik megoldás ez a leggyakoribb, hogy a forgatókönyvet is használjuk, és szkripteket is készítünk. A szkriptekről a következő fejezetben részletesebb leírás olvasható. Egy szereplő elhelyezése a prezentációban ha nem szkripttel valósítjuk meg kétféle 8

módon történhet. Az egyik, ha a szereposztából a forgatókönyvbe húzzuk a szereplőt az egérrel, a másik, ha a színpadra. Mindkét esetben létrejön egy sprite a forgatókönyvben, amelyet egy alapértelmezés szerint 28 frame hosszúságú kék téglalap jelöl. Megjegyzés: a sprite-ok alapértelmezett hosszát megváltoztathajuk az Edit > Preferences > Sprite menük választásával, és a Span duration értékének megadásával. A sprite-ok létrehozásának egyik módja, ha a szereposztásból a forgatókönyvbe húzzuk őket az egérrel A két módszer között a fő különbség az, hogy amikor a színpadra húzzuk a szereplőt, akkor azzal egyben a színpadi helyzetét is megadjuk (más szóval: ott lesz a képernyőn az adott médiaelem, ahová húztuk). Ha a forgatókönyvbe húzzuk a szereplőt, akkor annak a színpadon való elhelyezkedését a regisztrációs pontja (Registration point) fogja meghatározni. Képek esetében a regisztrációs pont alapértelmezés szerint a kép középpontja, szövegek esetében pedig a szöveget megjelenítő doboz bal felső sarka. Ha a szereplőt a szereposztásból a forgatókönyvbe húzzuk, a regisztrációs pontja automatikusan a színpad középpontjába kerül. Más szavakkal: ha egy képet ábrázoló szereplőt a forgatókönyvbe húzunk, akkor az alapértelmezés szerint automatikusan a színpad közepén jelenik meg, ha egy szöveges szereplőt húzunk a forgatókönyvbe, akkor az azt tartalmazó szövegdoboz bal felső sarka lesz a színpad közepén. A szereplők regisztrációs pontjának helye megváltoztatható, bár erre ritkán lesz szükségünk (képek esetében kattintsunk a képet tartalmazó szereplőn duplán, és a beépített képszerkesztőben áthelyezhetjük a regisztrációs pontot). Ami fontosabb: ha szkriptekből szeretnénk egy sprite színpadon való elhelyezkedését manipulálni, akkor annak egyik lehetséges megvalósítása szintén a regisztrációs pontokkal történhet. 9

Ezen az ábrán egy képet húztunk a forgatókönyvbe. Mivel egy kép regisztrációs pontja a kép középpontjan van (alapértelmezés szerint), a kép a színpad közepén jelent meg A szöveget tartalmazó szereplőből létrejött sprite bal felső sarka került a színpad közepére 10

A forgatókönyvben tehát csatornákat találunk, amelyeken a szereplőkhöz relt spriteokat helyezhetjük el. A csatornák sorszámozva vannak (alapértelmezés szerint 1-től 150-ig), a csatornákon elhelyezett sprite-ok pedig képkockákból (frame) állnak. Mint azt korábban olvashattuk, egy sprite alapértelmezés szerint 28 frame hosszúságú. Amikor elindítjuk egy prezentáció lejátszását, a lejátszófej (Playhead) a megadott sebességgel haladni kezd a forgatókönyvben. (A lejátszófej egy piros színű téglalapként jelenik meg.) A színpadon azok a sprite-ok fognak látszani, amelyek a lejátszófej által kijelölt pillanatban a forgatókönyvben helyet foglalnak. Előfordul, hogy két vagy több sprite valamekkora része azonos területre esik a színpadon, más szóval valamilyen mértékben takarják egymást. Mindig az a sprite látszik teljes terjedelemben, amelynek nagyobb a sorszáma. Így ha egy-egy képet helyezünk el az 1-es és a 2-es számú csatornákon, és ezeket a színpadon egymás fölé igazítjuk, akkor a 2- es csatornán található kép takarni fogja az 1-es csatornán lévőt. A forgatókönyvnek van egy alapértelmezés szerint rejtett része is, ahol az ún. effektuscsatornákat (Effects Channels) találjuk. Ezeket úgy tudjuk megjeleníteni/elrejteni, ha a frame-ek sorszámát megjelenítő rész fölé állunk az egérrel a csatornák sorszáma fölötti részen, majd jobb gombbal kattintva a helyi menüben az Effects Channels menüpontot választjuk. Az effektuscsatornák fentről lefelé a következők: Egy stopperóra jelöli a Timer channelt. Ezen a csatornán olyan egy frame hosszúságú sprite-okat helyezhetünk el, amelyekkel a lejátszófej sebességét szabályozhatjuk (alapértelmezésben ez 30 frame/sec), megállíthatjuk azt egy megadott időtartamra, vagy egy esemény bekövetkeztéig (ez lehet egérkattintás, billentyűleütés, vagy Cue Point, mely a médiaelemekkel való szinkronizációt segítő eszköz). Alatta látható a Palette channel, melynek használatát ez a jegyzet nem tárgyalja. Transition channel: ezen olyan sprite-okat helyezhetünk el, amelyekkel képernyőeffektusok, más szóval transitionök ágyazhatók a prezentációba. Érdemes megjegyezni, hogy minden transition, melyet ezen a csatornán helyezünk el, szereplőként megjelenik a szereposztásban is. Ez többek között azért is előnyös, mert egy transition ezáltal újrafelhasználható lesz. Más szóval: ha szeretnénk egy bizonyos képernyőeffektust többször is felhasználni a prezentációban, akkor azt elég egyszer beállítani, és akárhányszor beszúrhatjuk a mozi futása során. A transitionök jellemzőiről részletesebben olvashatunk a példafeladatoknál. A két hangcsatorna (Sound channel 1, 2): itt magától értetődően zenei, illetve egyéb audiószereplők sprite-jai helyezhetők el. Fontos tudnivaló, hogy a zenei csatornákon elhelyezett sprite-ok hossza nem befolyásolja a lejátszott hang sebességét. Például ha egy adott hosszúságú zenei fájlt szereplőnek importálunk, majd elhelyezzük az egyik zenei csatornán először egy 10 frame, majd egy 20 frame hosszúságú sprite-ként, a 10 frame hosszúságú sprite nem kétszer olyan gyorsan fogja eljátszani a zenét, mint a 20 frame hosszúságú: a 11

lejátszás sebessége mindkét esetben azonos lesz. Annyi különbség lehetséges a két lejátszás között, hogy a 10 frame hosszúságú sprite lejátszásakor hamarabb megáll a zene, de a későbbiekben látni fogjuk, hogy ez sem feltétlenül biztos. A zenei sprite-ok hossza tehát nem befolyásolja a lejátszás sebességét, de befolyásolhatja a zene vagy hang időtartamát (ami azzal járhat, hogy nem fog elhangozni a teljes zenemű vagy hang, hanem idő előtt félbeszakad). Egy szintén fontos tudnivaló: ha a forgatókönyvben vezéreljük a prezentációnk hangjait, akkor csak két hangcsatorna áll relkezésünkre, és ez időnként kevés lehet. Gondoljunk arra az esetre, amikor a prezentációnkban háttérzene szól (egyik csatorna), egy adott szöveget felolvas egy narrátor (másik csatorna), és mi szeretnénk, ha a képernyőn látható nyomógombokra kattintva még valamilyen hangeffektus (pl. kattanás) is hallatszana. Csak a forgatókönyv hangcsatornáit használva ez nem lehetséges. Szkriptek alkalmazásával azonban nyolc hangcsatorna áll relkezésünkre, amely valószínűleg bármilyen feladat megoldásához elegő lesz. Szkriptcsatorna (Script channel): ez a csatorna akkor is látszik, ha az effektuscsatornákat elrejtjük. Ezen a csatornán olyan 1 frame hosszúságú sprite-okat helyezhetünk el, melyek a szereposztásban találhatók és szkripteket tartalmaznak. A szkriptekkel a következő fejezet foglalkozik részletesen. Az effektuscsatornák fölött található a könyvjelzők (Marker) elhelyezésére szolgáló terület ezt nem jelzi külön piktogram. A markerekkel nevet adhatunk az egyes képkockáknak, ezzel könnyítve a rájuk való hivatkozást. Amikor a lejátszófejet a szkriptekben szeretnénk vezérelni, akkor hivatkoznunk kell az egyes képkockákra. Ha nem szeretnénk képkockasorszámokat fejben tartani, reljünk hozzájuk beszédes nevű markereket. A markerek elhelyezéséhez kattintsunk a csatornák fölötti sávon egyet az egérrel. A marker nevének megadása egyszerű begépeléssel történik, a markerek neve tartalmazhat ékezetes betűt és szóközt is. A markerek húzással áthelyezhetők, ha pedig függőlegesen kihúzzuk őket a sávról (akár fel, akár le), azzal törölni tudjuk őket Szkriptek A Macromedia Director MX programozásához külön programozási nyelv használható, melynek neve Lingo. (Megjegyzés: az MX 2004 verzióban Lingo mellett JavaScriptben is kódolhatunk.) A programokat (szkripteket) a prezentáció különböző objektumaihoz relhetjük hozzá. Bár a Director többféle szkripttípust ismer, a szkriptek vizsgálatakor mi az alábbi csoportosítást fogjuk alapul venni. 12

Szkripttípusok Forgatókönyvszkriptek: az ilyen típusú szkriptek önálló szereplőként jelennek meg a szereposztásban. Előnyük az, hogy hozzárelhetők a forgatókönyv bármelyik szereplőjéből készített sprite-hoz annak típusától függetlenül. Egy forgatókönyvszkript tehát hozzárelhető a forgatókönyvben elhelyezett bármelyik sprite-hoz, de akár egy képkockához is. A sprite-okhoz relhető szkripteket gyakran nevezik Behaviornek, esetleg viselkedésnek. Tudni kell, hogy ez nem az ilyen típusú szkriptek kizárólagos neve a Directorban, ugyanis a script és a Behavior kifejezések a Director ezen verzióiban már egymás szinonimái, vagyis minden szkriptet nevezhetünk viselkedésnek is. A korábbi változatokban a különböző elnevezések különböző programtípusokat jelöltek, ez a különbség azóta megszűnt. Mégis: a Behavior szót gyakran az kifejezetten ilyen típusú szkriptek másik elnevezéseként értelmezik. Szereplőszkriptek (cast member script): ezek a szkriptek nem jelennek meg önálló szereplőként a szereposztásban, hanem egy szereplő részeként kezelhetők. Ez azt jelenti, hogy kizárólag ahhoz a szereplőhöz tartoznak, amelyhez megírjuk őket, a futásuk nem vezérelhető más szereplők, sprite-ok, vagy képkockák által. Moziszkriptek (movie script): önálló szereplőként megjelennek a szereposztásban, de nem relhetők sprite-hoz vagy képkockához. Bármilyen típusú szkriptet is készítünk, úgynevezett eseménykezelőket (handler) kell bennük elhelyeznünk. Ezek olyan alprogramok, amelyek bizonyos események bekövetkezésekor futnak le. Egy eseménykezelőbe írott utasítássorozat akkor kap vezérlést (tehát akkor fut le), amikor vezérlést kap az a szkript, amely tartalmazza, és ezalatt az idő alatt bekövetkezik az az esemény, amelyet az adott eseménykezelő kezelni tud. Mikor kapnak vezérlést a különböző típusú szkriptek? Tudnunk kell először is, hogy az adott szkript mikor kaphat vezérlést, vagyis mikor futhatnak le a bennük található eseménykezelők: Forgatókönyvszkript: mivel az ilyen szkripteket a forgatókönyv egyes elemeihez (azaz sprite-okhoz) reljük, ezek a szkriptek akkor kapnak vezérlést, amikor a lejátszófej áthalad azon a sprite-on vagy képkockán, amelyhez hozzáreltük őket. Tegyük fel, hogy szeretnénk a 10. képkockán megállítani a lejátszófejet. Ehhez egy képkockaszkriptet (tehát egy bizonyos fajta forgatókönyvszkriptet) kell készítenünk, ami egy önálló szereplő lesz a szereposztásban. Ezt a szereplőt kell elhelyeznünk ezután a szkriptcsatorna 10. képkockáján. Amikor a futtatáskor a lejátszófej a 10. képkockára ér, ez a szkript vezérlést kap. Ekkor a Director megvizsgálja, hogy az adott szkriptben milyen eseménykezelők találhatók. Ha az alatt az idő alatt, amíg a lejátszófej a 10. képkockán tartózkodik, bekövetkezik egy olyan esemény, amelyhez tartozik eseménykezelő ebben a szkriptben, akkor végrehajtódnak az abban az eseménykezelőben leírt utasítások. Vigyázat, ez az időtartam nagyon rövid idő is lehet, alapértelmezés szerint például 1/30 másodperc. Valószínűtlen, hogy egyetlen felhasználó is képes lenne éppen abban az egyharmincad másodpercben kattintani, tehát az egérkattintás kezelését nem célszerű egy képkockaszkriptben megvalósítani hacsak le nem állítjuk a lejátszófejet abban a kockában. És látni fogjuk a példafeladatokban, hogy egészen gyakori eset, hogy a lejátszófejet bizonyos kockákban megállítjuk. Pontosan azért, hogy a felhasználónak legyen ideje például kattintani egyet az egérrel. Forgatókönyvszkript nemcsak képkockához, de sprite-hoz is relhető. Képzeljük el, hogy egy képnézegetőt kell készítenünk a prezentációnkba. Minden képet külön sprite-ként helyezünk el a forgatókönyvben, és minden sprite-ot külön-külön markerrel (könyvjelzővel) jelölünk. Elegő 13

egy szkriptet készítenünk, melyben egy eseménykezelő az előző vagy a következő markerre (képre) viszi a lejátszófejet például a kurzormozgató gombok hatására. Ezt a szkriptet hozzárelhetjük az összes képhez, ami a képnézegetőben meg fog jelenni. Nem kell minden képhez különkülön szkriptet készítenünk, elég csak egyet, ami univerzális. Ez nemcsak azért jó, mert kevesebb munkánk van vele, hanem azért is, mert ha valamit módosítanunk kell (pl. azt a transitiont, ami a következő vagy az előző képet megjeleníti), azt elég egyetlen helyen megtennünk. Szereplőszkript: akkor kap vezérlést, amikor azon a sprite-on halad át a lejátszófej, amely azt a szereplőt jeleníti meg, amelyhez a szkriptet megírtuk. Lássunk egy példát! Készítünk egy prezentációt, amelyben a szokásos navigációs gombok találhatók: következő lap, előző lap, vissza a főmenübe, kilépés, stb. Tegyük fel, hogy az egyes lapok külön-külön markerrel relkeznek. Képzeljük el, hogy ezeket a gombokat megrajoltuk Adobe Photoshopban, és mindet beimportáltuk a szereposztásba, de minden gombot csak egy példányban. Ezek a gombok a prezentáció teljes működése alatt láthatók és működőképesek. Milyen szkriptet készítsünk hozzájuk? A következő és az előző lapra navigáló gombok működése attól függ, melyik az aktuális oldal. Mivel minden lap saját markert kapott, elvileg működőképes az a megoldás, hogy az előző illetve a következő markerre ugrunk, de mi van, ha a forgatókönyvben a lapok sorrje nem egyezik meg azok lejátszási sorrjével? Ilyenkor minden lapnak pontosan kell tudnia, hogy melyik az ő előzője és rákövetkezője. Ezt a feladatot egyszerűbbnek látszik forgatókönyvszkriptekkel megoldani, hiszen az előző és következő gombot minden oldalon el kell helyeznünk, de a gombok egyes példányai attól függően végzik működésüket, hogy éppen melyik lapon vannak elhelyezve. A kilépés, vagy a vissza a főmenübe gombok azonban bárhol is vannak elhelyezve, mindig ugyanazt csinálják, vagyis működésük független a forgatókönyvbeli elhelyezkedésüktől. Esetükben célszerűnek látszik a szereplőszkript alkalmazása: beimportáljuk a gomb képét, majd megírjuk hozzájuk a szereplőszkriptet, végül a szereplőhöz relve egyetlen sprite-ot helyezünk el a forgatókönyvbe, ami a prezentáció első kockájától az utolsóig tart. Moziszkript: az ilyen szkriptek jellemzője, hogy a prezentáció teljes időtartama alatt vezérlést kaphatnak, vagyis azok az eseménykezelők, amelyeket moziszkriptben helyezünk el, mindig lefutnak, ha az adott esemény bekövetkezik attól függetlenül, hogy a lejátszófej melyik képkocka vagy sprite-ok fölött halad el. Milyen eseményeket kezelnek az eseménykezelők? A Director számos beépített eseményt kezel, ezekről részletesebben olvashatunk a példafeladatokat bemutató fejezetekben. Felsorolásképpen csak néhány azok közül, amelyeket a prezenetációkban gyakran használni szoktunk: a lejátszófej belép egy képkockára (enterframe), a lejátszófej kilép egy képkockáról (exitframe), lenyomjuk az egér bal gombját (mousedown), felengedjük a lenyomott bal gombot (mouseup), az egeret egy sprite fölé húzzuk (mouseup), az egeret lehúzzuk egy sprite fölül (mouseleave), lenyomunk egy gombot a billentyűzeten (keydown), felengedünk egy lenyomott gombot a billentyűzeten (keyup), elkezdődik a mozi futása (startmovie), stb. Ezeket a beépített eseményeket a Director alapértelmezetten tudja kezelni. Az eseménykezelők mindig az on kulcsszóval kezdődnek, ezt követi az esemény neve, illetve az esetleges paraméterek. Az eseménykezelő végét az kulcsszó jelöli. Például: on mouseleave utasítások 14

A Directorban lehetőségünk van saját eseménykezeleőket is készíteni, ezek tulajdonképpen a más programozási nyelvekben megismert alprogramoknak eljárásoknak és függvényeknek felelnek meg. Az eljárás olyan utasítássorozat, melynek nevet adunk. Ha szeretnénk ezt az utasítássorozatot végrehajtani, csak a nevét kell leírnunk a hívás helyén. Ezzel a módszerrel az olyan programrészeket, melyeket többször, a program több pontján is használni kívánunk, elegő csak egyszer megírni. Ezzel időt takaírtunk meg, és a programot is strukturáltabbá tesszük. (Megjegyzés: az eljárás és a függvény között az a fő különbség, hogy a függvény túl azon, hogy egy meghatározott utasítássorozatot hajt végre az utasítások végrehajtása után egy visszatérési értéket ad a hívó programrésznek. Az eljárások nem adnak visszatérési értéket.) A saját eseménykezelő megadása ugyanúgy történik, mint a beépített eseményekhez tartozó eseménykezelőké: on eseménynév [paraméterek] utasítások A beépítve kezelt események bekövetkezését a rszer figyeli (tehát pl. ahhoz, hogy a mouseup eseménykezelő végrehajtódjék, a programozónak nem kell olyan programrészt írnia, ami folyamatosan figyeli az egérről érkező bináris adatokat, mivel a Director megteszi ezt helyette). Ezzel szemben ahhoz, hogy egy a felhasználó által írt eseménykezelő (vagyis eljárás vagy függvény) lefusson, azt egy másik eseménykezelőben meg kell hívnunk: utasításként le kell írnunk a nevét, és mögé az esetleges paramétereket. on mouseup if pontokszáma < maxpont then pontszámnövelése if on pontszámnövelése pontokszáma = pontokszáma + 1 A fentiekre sok konkrét példát találhatunk a példafeladatok megoldásainál. Ebben a fejezetben nem szóltunk szkriptekben felhasználható változókkal kapcsolatos tudnivalókról. Ezek ismerete igen fontos a szkriptek készítéséhez, ezért a megfelelő fejezetekben fordítsunk külön figyelmet a megértésükhöz! Szintén nem esett szó a Lingo objektumorientált programozási eszközeiről. Ezekről ebben a jegyzetben nem is lesz szó, de tudjunk róla, hogy a Director relkezik valamilyen szinten ezzel a szolgáltatással is. Összefoglalás A Macromedia Director programozható. A programozáshoz használható a Lingo nyelv, illetve az MX 2004 verziótól a JavaScript is. Egy prezentációban a programokat szkripteknek nevezzük, melyeknek három alaptípusát tárgyalta jelen fejezet. Minden szkriptben esemény- 15

kezelőket definiálhatunk. Ezek részben a Macromedia Director által rszerszinten kezelt eseményekhez tartozhatnak, vagy a felhasználó által írott alprogramok lehetnek. Egy szkript tetszőleges számú eseménykezelőt tartalmazhat: on esemény1 utasítások on esemény2 utasítások... Ahhoz, hogy egy szkript valamely eseménykezelőjében az utasítások lefussanak, két dolognak kell teljesülnie. Egyrészt vezérlést kell kapnia az adott szkriptnek (tehát pl. szereplőszkript esetén az adott szereplőt megjelenítő sprite-nak aktívnak kell lennie, vagyis szerepelnie kell a forgatókönyvben és a lejátszófejnek éppen fölötte kell tartózkodnia), másrészt ezidő alatt az eseménykezelőhöz tartozó eseménynek be kell következnie (pl. a mousedown eseményhez tartozó eseménykezelő akkor futhat le, ha az adott szkript éppen aktív és az egéren ezidő alatt lenyomjuk a bal gombot). 16 Készítsük el az első prezentációt! Első prezentációnk igen szerény lesz: Budapest két látnivalóját, a Halászbástyát és a Hősök terét fogja bemutatni. A prezentáció első változatában mellőzni fogunk minden különösebb vizuális effektust. A bemutató indításakor egy egyszerű főmenü jelenik meg, melyen két nyomógomb lesz látható: feliratuk a két helyszín neve. Amikor a felhasználó rákattint valamelyik helyszín nevére, akkor megjelenik az adott helyszín képe és egy rövid leírás róla. A helyszínek leírásának oldalán a Vissza gombbal lehet visszatérni a menübe. A prezentáció alatt háttérzene szól. A prezentációhoz szükséges fájlok a budapest.zip állományban találhatók. A mozi létrehozása és beállításai Indítsuk el a Macromedia Directort, és zárjuk be az összes szükségtelen ablakot a programon belül: csak a színpad (Stage), a forgatókönyv (Score) és a szereposztás (Cast) ablakai legyenek a képernyőn. Szükségünk lesz az eszköztárra (Tools), valamint a Property Inspectorra is. Ellenőrizzük a Window menüben, hogy ezek be vannak-e kapcsolva! Ha most indítottuk a Directort, akkor egy új üres mozi automatikusan meg lesz nyitva. Ha menet közben új mozit szeretnénk létrehozni, válasszuk a File menü New > Movie menüpontot. Ellenőrizzük, hogy a színpad ablaka-e az aktív. Ha nem, kattintsunk rá egyet! Ekkor a Property Inspectoron (a képernyő jobb szélén álló panelek közül a legfelső) két fül lesz látható, a Guides és a Movie. Kattintsunk a Movie fülre! Állítsuk be a mozi méretét (Stage Size) 640 480-ra, és ellenőrizzük, hogy a háttérszín (Color) fehér (#FFFFFF) legyen! A többi értéket változatlanul hagyhatjuk.

A színpad ha az egészet látni akarjuk a szerkesztés alatt kényelmetlenül nagy helyet foglalhat el a képernyőn. Célszerű a szerkesztés alatt kisebb méretű nézetet beállítani. Ehhez válasszuk a megfelelő nagyítást (pl. 50%) a színpad ablakának bal alsó sarkában található litamezőből (lásd kép)! A szereplők importálása Állítsuk be a szereposztást úgy, hogy a szereplők előnézeti képét lássuk! Ehhez kattintsunk a Cast View Style gombra (lásd kép)! Kattintsunk az 1. szereplő helyére az egér jobb gombjával, majd válaszszuk a helyi menüből az Import menüpontot. Nyissuk meg a budapest. zip mappáját (ehhez a letöltött zipet először ki kell bontani), és jelöljük ki a Budapest látnivalói.jpg, a Halászbástya.jpg, a Halászbástya1. jpg, a Hősök tere.jpg, a Hősök tere1.jpg és a háttér2.jpg fájlokat. Ehhez kattintsunk először a Budapest látnivalói.jpg-re, majd nyomva tartva a Ctrl billentyűt, sorban kattintsunk a többi fájlnévre is. (Mindig az a fájl kerül a jobb gombbal kattintott szereplőhelyre, amelyet utoljára jelöltünk ki.) Miután az összes fájlt kijelöltük, kattintsunk az Import gombra. Ekkor egy párbeszédablak jelenik meg, mely a képek importálásával kapcsolatos információkat tartalmazza, illetve kéri tőlünk: A fenti képek 32 bit színmélységűek, a színpad azonban 24 bites színmélységben kezeli őket. Dönetnünk kell, hogy 32 vagy 24 bites színmélységben akarjuk őket importálni, válaszszuk most a 24 bites lehetőséget! A Trim White Space opció körülvágja a képet, így leveszi róla az esetleges külső, fehér területet és csak a kép hasznos részét importálja be. Ezt az opciót most kapcsoljuk ki! Szeretnénk az összes kijelölt képre ezeket a beállításokat alkalmazni, ezért jelöljük be a Same Settings for Remaining Images opciót így a Director nem fogja tőlünk újra kérni minden kép esetében ezeket a beállításokat. Az Ok gombbal megtörténik a képek importálása. Ezután importáljuk a 7., 8. és 9. szerplőhelyre a Hősök tere.rtf és a Halászbástya.rtf szövegállományokat, illetve az A day without rain.mp3 című zenét is a fentiekhez hasonló módon. Ezeknél természetesen nem kérdez rá a színmélységre a Director. (Megjegyzés: akár egy lépésben is importálhattuk volna az összes fájlt, függetlneül attól, hogy különböző a fájltípusuk.) 17

A Director egyes verziói néha hibásan kezelik a szöveges fájlokat. Jellemzően az RTF típusú állományokkal szokott gond lenni, az ASCII-állományok TXT, HTML rszerint gond nélkül importálhatók. Ebben a mintafeladatban előfordulhat, hogy a két szövegfájl importálása után a szövegek nemkívánatos karaktereket tartalmaznak (pl. gyakran egy ö betűt legelső karakterként). Ha a szereposztásban duplán kattintunk a szövegeken, a Director szövegszerkesztőjében javítani tudjuk ezeket a hibákat. Ezzel a szövegszerkesztővel nemcsak importált szövegeket tudunk szerkeszteni, de új szöveges szereplőket is létre tudunk hozni. A szövegszerkesztő funkcióinak felfedezését az Olvasóra bízzuk, használata nem különösebben bonyolult. Hasonlóképpen, ha egy képet tartalmazó szereplőre kattintunk a szereposztásban, akkor egy beépített képszerkesztő nyílik meg. Ennek szolgáltatásai kb. a Paint programhoz hasonlók, messze alulmaradnak pl. az Adobe Photoshop lehetőségeitől. Talán egy olyan funkciót említhetünk, melyre ebben a képszerkesztőben időnként szükségünk lehet: a kép regisztrációs pontjának áthelyezése (lásd: jobboldali kép). Az összes fájl beimportálása után a szereposztás az alábbi képen láthatóhoz hasonlóan fog kinézni (a szereplők sorrje eltérő lehet, de ennek nincs jelentősége). Figyeljük meg, hogy minden beimportált szereplő automatikusan nevet kapott! A szereplők neve megegyezik az őket tartalmazó fájlok neveivel, de a szereplők nevének végén nincs ott a fájlkiterjesztés. Vegyük észre, hogy emiatt keletkeztek azonos nevű szereplők is (pl. Hősök tere kép és szöveg)! Ez a Director számára nem okoz gondot, nekünk azonban a későbbiekben okozhat, éppen ezért célszerű átnevezni az azonos nevű szereplőket 18 A prezentáció összeállítása A háttér elhelyezése A háttér2 nevű szereplőt húzzuk a szereposztásból a forgatókönyv 1. csatornájára, az 1. frame-től kezdődően. Így létrejön egy alapértelmezés szerint 28 frame hosszúságú sprite

a forgatókönyvben, illetve a színpad közepén megjelenik a háttér. Állítsuk ennek a sprite-nak a hosszát 50 frame-re: fogjuk meg az egér bal gombjának nyomvatartása mellett az utolsó képkocát és húzzuk ki az 50. frame-ig. Figyeljük meg, hogy a színpadon ez a kép az egérrel elmozdítható a helyéről (ez minden későbbiekben beimportált vizuális szereplőre igaz lesz). Ha szeretnénk ezt elkerülni, illetve megakadályozni, hogy véletlenül mozdíthassuk el a képet a helyéről a későbbiekben, akkor rögzítsük a képet (a sprite-ot) a Property Inspector segítségével. Kattintsunk a színpadon a képre vagy a forgatókönyvben a sprite közepére, hogy ki legyen jelölve. Kattintsunk ekkor a Property Inspectoron a Sprite fülre, majd ott a kislakatot ábrázoló gombra (Lock), ahogyan az a képen látható. Ugyanitt elvégezhető a sprite helyzetének és méretének beállítása is. Az X és Y koordináták a sprite regisztrációs pontjának koordinátáit jelentik. A W és H (width és height) értékek a sprite szélességét és magasságát pixelben. Ezzel a két értékpárral a sprite helyzete illetve mérete külön-külön beállítható. Ugyanezt a beállítást úgy is megtehetjük, ha elképezljük azt a befoglaló téglalapot, amelyben ez a sprite majd megjelenik a színpadon. Határozzuk meg ennek a befoglaló téglalapnak a bal felső és a jobb alsó sarkát, pontosabban azok koordinátáit a színpadon. Ezzel egy lépésben beállítjuk a sprite helyét és méretét. Ennek a képzeletbeli befoglaló téglalapnak a koordinátáit határozzák meg a középen látható L (left, a bal felső sarok X-koordinátája), T (top, a bal felső sarok Y-koordinátája), R (right, a jobb alsó sarok X-koordinátája), B (bottom, a jobb alsó sarok Y-koordinátája). A feliratok elhelyezése Húzzuk a Budapest látnivalói nevű szereplőt a színpadon a jobb felső sarokba. Igazítsuk úgy, hogy a színpad felső, illetve jobb szélétől kb. 5-10 pixel távolságra legyen a kép. Két dolgot kell észrevennünk! Az egyik, hogy a kép háttere fehér, ami kitakarja a háttérkép azonos nagyságú részét. Ahhoz, hogy ez a takarás megszűnjön, állítsuk a felirat hátterét átlátszóvá: a Property Inspector Sprite fülére kattintva az Ink tulajdonságot állítsuk Transparentre. A Background Transparent azért nem elég, mert azáltal a képen csak a teljesen fehér (#FFFFFF) színű pontok lesznek átlátszók. A képen azonban a szövegnek vetett árnyéka van, ami körül a háttér világosszürkéből fehér színátmenetű, és azt nem tudja átlátszóvá tenni a Director. A Transparent érték ezt megoldja. A másik fontos dolog, hogy ez a sprite esetleg rossz helyre került a forgatókönyvben. Mivel nem akartuk, hogy a felirat a színpad közepén jelenjen meg, nem a forgatókönyvbe húztuk a szereplők közül, hanem egyenesen a színpadra. Ilyenkor a sprite a forgatókönyv első üres csatornájára kerül, az első frame-je pedig ott lesz, ahol a lejátszófej éppen áll. Semmi gond: bárhol is van éppen most, fogjuk meg a sprite-ot, és húzzuk át a forgatókönyv 2. csatornájának 1. frame-jéhez. A hosszát állítsuk 50 frame-re, mint a háttérképét. (Ha szükségesnek tartjuk, ezt is rögzíthetjük a kislakattal.) Helyezzük a színpadra a Hősök tere1 és a Halászbástya1 szereplőket. Legyenek a színpad bal szélétől 5-10 pixelre, függőlegesen nagyjából a színpad közepén, vagy alsó felének tetején. Tegyük őket is átlátszóvá! A sprite-jaik legyenek 15 frame hosszúak, első frame-jüket állítsuk a forgatókönyv első kockájára, és helyezzük őket a 3. és 4. csatornára, ha nem ott lennének! 19

A minimális esztétikai követelményeknek akkor felelünk meg, ha a két gomb bal széle egyvonalba esik. Ez megoldható a Property Inspectoron, ha a két gomb L értékét azonosra álítjuk, és a többit nem változtatjuk meg, vagy az Align paletta használatával, amit a Window menüből vagy a Ctlr+K kombinációval kapcsolhatunk be. Ha a palettát bekapcsoltuk (valószínűleg a Property Inspector alatt lesz valahol a képernyő jobb szélén), akkor jelöljük ki egyszerre a két felirat sprite-ját a színpadon vagy a forgatókönyvben (Shift és kattintás az egérrel), majd használjuk az Align palettán a Left edge gombot (lásd kép)! Eddigi munkánk eredménye nagyjából ez lesz: Hogy áttekinthetőbb legyen a kép, a jobboldali palettákat elrejtettük Ideje mentenünk az eddigieket (File > Save as...). Ha mentettünk, indítsuk el a prezentációt! Ehhez használhatjuk a színpad ablakának alján található vezérlőgombokat, vagy a Director képernyőjén a menüsor alatt középtájon elhelyezkedő vezérlőgombokat, esetleg bekapcsolhatjuk a Window menüben a Control Panelt. Mindegy, mit választunk, nyomjuk meg a (Play) gombot! A prezentáció a színpad ablakában futni kezd. Ha szeretnénk teljes képernyőn futtatni a prezentációt, nyomjuk meg egyszerre a Shift és a numerikus billentyűzeten található Enter-t. (A másik, a res Enter nem jó!) Esetleg indítsuk el a prezentációk a gombbal, majd a View menüben válasszuk a Full Screen menüpontot (notebookokon ez lesz a nyerő megoldás, mivel azokon nem szokott külön numerikus billentyűzet lenni). Megállítani a (Stop) gombbal vagy az Esc billentyűvel tudjuk. Akárhogy is futtatjuk a programot, észre fogjuk venni, hogy a két helyszín felirata villogni fog, azaz egy ideig láthatók lesznek, aztán egy időre eltűnnek, és ez ismétlődik. Ennek az 20

az oka, hogy a két helyszín feliratának sprite-jai rövidebbek, mint a másik két sprite. Ha nem teljes képernyő futtatjuk a prezentációt, akkor a lejátszófej mozgását figyelve jól látható lesz, hogy mikor és miért tűnik el a két helyszín felirata. Állítsuk meg a lejátszófejet! Szeretnénk, ha a lejátszófej megállna a 15. frame-en, amikor odaér. Ehhez egy nagyon egyszerű szkriptet kell készítenünk. Ez a szkript egy forgatókönyszkript lesz, egészen pontosan egy képkockaszkript. A létrehozásához kattintsunk duplán a szkriptcsatorna 15. kockáján (oda, ahol a képen az egérmutató éppen áll)! Ekkor megnyílik a szkriptablak, melynek fejlécében látni fogjuk, hogy most egy Behaviort hozunk létre a szereposztás 10. szereplőjeként (lehet, hogy ez a szám nem mindenkinél a 10. lesz, attól függően, hogy ki hány szereplőt importált be). Az ablak szerkesztőterületén pedig el is készült az első szkriptünk egy része. Ez jelenleg egyetlen eseménykezelőt tartalmaz, amely az exitframe eseményt figyeli. Az exitframe esemény akkor következik be, amikor a lejátszófej éppen tovább akar lépni arról a képkockáról, amihez ezt a szkriptet reltük. Tiltsuk ezt meg neki! (Figyeljük meg, hogy eközben létrejött egy új szereplő 10. sorszámmal!) A szkriptekben a lejátszófejet a go to képkocka paranccsal vezérelhetjük, ahol a képkocka lehet egy frame sorszáma a forgatókönyvben, vagy ha reltünk markert ehhez a képkockához, akkor annak a markernek a neve. Ez esetben a marker nevét idézőjelek közé kell zárnunk: go to "főmenü". (Megjegyzés: a parancs írható go to frame képkocka formában is, vagyis a frame kulcsszó redundánsan kiírható.) Logikusnak látszik, hogy akkor ide a go to 15 vagy go to frame 15 utasítást kellene írnunk, ezzel megálítanánk a lejátszófejet, ami épp a 15. kockán van, amikor ez a szkript lefut. (Az exitframe esemény ugyanis még azelőtt bekövetkezik, hogy a lejátszófej elhagyná az adott képkockát.) Legyünk azonban előrelátók, és gondoljunk arra, hogy a prezentációban további két helyen lesz szükséges még a lejátszófej megállítása. Hamarosan létrehozzuk a prezentációnak azokat a részeit is, ahol a két helyszín képe és leírása lesz látható, és ahhoz, hogy a szöveget el lehessen olvasni, a lejátszófejet ezeket a helyeken is meg kell állítanunk. Készítsünk olyan szkriptet, ami újrafelhasználható lesz. Más szóval: ne készítsünk három majdnem teljesen azonos szkriptet, amik csak a képkockák sorszámában térnek el, hanem készítsünk egyetlen olyat, amely mindig az aktuális kockán állítja meg a lejátszófejet. A megoldás kulcsa a the frame kifejezés. A the frame egy rszertulajdonság. A rszertulajdonság (System property) olyan szimbólum, aminek a Director ad értéket, bár léteznek olyan rszertulajdonságok is, melyek értékét épp a felhasználónak kell megadnia (ilyen pl. a the floatingprecision). A rszertulajdonságok mindig a the kulcsszóval kezdődnek. A the frame rszertulajdonság az aktuális képkocka sorszámát tárolja. Ahogy halad a lejátszófej, ennek a rszertulajdonságnak az értéke automatikusan változik. Ha a lejátszófejet a go to the frame kifejezéssel vezéreljük, akkor gyakorlatilag azt mondjuk a Directornak, hogy vigye arra a kockára a lejátszófejet, amelyiken az éppen most tartózkodik. Ha ezt az exitframe eseményhez reljük, akkor a Director megállítja a lejátszófej mozgását, hiszen mielőtt az kiléphetne az aktuális kockából, visszaugrik ugyanarra. Jogosan érezheti kicsit nyakatekertnek ezt a gondolkodásmódot az Olvasó, de ez a megoldás. 21

Írjuk be a szkriptablakba most ezt az utasítást, majd zárjuk be a szkriptablakot! Vigyük a lejátszófejet az 1. képkockára, majd indítsuk újra a lejátszást! Figyeljük meg, hogy mostmár nem villognak a feliratok, hiszen a lejátszófej megáll a 15. képkockán. Korábban szó esett a markerek jelentőségéről. Ez a prezentáció nem túl bonyolult, mindössze 50 frame hosszú a forgatókönyve és lehetne ennél is rövidebb, nem okoz gondot az áttekintése, sem a képkockák sorszámának fejben tartása. Mégis, hogy kihasználjuk ezt a lehetőséget is, most reljük az 1. képkockához a Menü nevet! Kattintsunk az 1. frame fölött a markerek sávján. A létrejövő új markert nevezzük át! A helyszínekhez tartozó oldalak elkészítése Készítsük el először a Halászbástyát bemutató oldalt! Először is, ha még fut a prezentációnk, akkor állítsuk le. Most vigyük a lejátszófejet a 20. frame-re, hogy a most a forgatókönyvbe kerülő sprite-ok a 20. frame-től kezdődjenek. Ezután a Halászbástya nevű (kép)szereplőt húzzuk a színpadra úgy, hogy a színpad bal felét takarja. Ehhez a képet át kell méretezni, mivel az nagyobb, mint amekkora hely a relkezésére átt. Miután a képet a színpadra húztuk, a szípnadon megjelenő sprite sarkain és oldalfelezőin látható méretezőnégyzetekkel kicsinyítsük a kívánt méretűre. Ha méretezés közben nyomjuk a Shift gombot, a méretezés 22

aránytartó lesz. Ha a kép a helyére került, húzzuk mellé a Halászbástya nevű szöveges szereplőt. Ha a szöveg doboza kilóg a színpadról, méretezzük át azt! A Director a szövegdobozokat háromféle módon tudja méretezni. Ha kijelöltük a beállítani kívánt szövegdoboz sprite-ját, kattintsunk a Property Inspector Text fülére, és keressük a Framing listamezőt! Ha itt az Adjust to fit érték szerepel, akkor a kijelölt szövegdoboz szélességének változtatására annak magassága úgy változik meg automatikusan, hogy a szöveg teljes hosszában elférjen benne (még akkor is, ha így kilóg a színpadról). Ha a Scrolling értéket választjuk, akkor a dobozban megjelenik egy függőleges gördítősáv, és az akkor is ott lesz, ha nincs rá szükség. A doboz magasságát viszont teszőlegesen kicsire állíthatjuk análkül, hogy a szélességét változtatnunk kellene. A harmadik lehetőség a Fixed érték választása. Ha emellett döntünk, tetszőleges méretűre állíthatjuk a szövegdobozt, még akkor is, ha a szövegnek egy része így láthatatlanná válik. Miután átméreteztük a Halászbástya képét szövegének dobozát, győződjünk meg róla, hogy a sprite-jaik a forgatókönyv 3. és 4. csatornáján helyezkednek el, és mindkettő sprite a 20. frame-en kezdődik. Nevezzük el a 20. frame-et Halászbástya markernévvel, majd a két sprite végét húzzuk vissza a 30. frame-re. Hasonlóképpen járjunk el a Hősök tere helyszínnel. A 40. frame-től helyezzük a 3. és 4. csatornára a képet és a szöveget, méretezzük őket a kívánt nagyságúra, majd a sprite-ok végét húzzuk vissza az 50. frame-re a forgatókönyvben. Ezután reljük a Hősök tere markernevet a 40. frame-re. Mint látható, a Menü, a Halászbástya és a Hősök tere képernyők között a forgatókönyvben térközöket hagytunk. Ez célszerű, mert így a forgatókönyv áttekinthetőbb lesz azonban egyáltalán nem szükséges. A Director részéről annak sincs akadálya, ha minden képernyő csupán egyetlen frame hosszúságú, de a számunkra mindenképpen szerencsésebb, ha a sprite-ok feliratai olvashatók a forgatókönyvben, vagyis elegően hosszúak ahhoz, hogy el tudjuk olvasni, melyik szereplőt jelenítik meg. 23

Tegyük interaktívvá a prezentációt! Ha újraindítjuk a mozit, a két helyszín oldala egyelőre nem látható, hiszen a lejátszás a 15. képkockán megáll. Legyen a következő feladatunk az, hogy a két helyszín nevét mutató feliratot interaktívvá tesszük: ha a felhasználó rájuk kattint, a lejátszófej a megfelelő helyszín oldalára ugrik. A feladatot most szereplőszkriptekkel oldjuk meg! A 15. frame-re létrehozott képkockaszkript önálló szereplőként jött létre a szereposztásban. Ha mindent a leírtak szerint csináltunk eddig, akkor ez a szkript a 10. helyen van a szereplők között. Az ilyen típusú szkriptek ikonja a szereposztásban egy kis sárga színű fogaskerék. A most elkészítő szkripteknek nem kell önálló szereplőként megjelennie, hanem már létező szereplők részeként készítjük el őket. (Ezeket nem hozzáreljük a szereplőkhöz, hanem beleírjuk a szereplőkbe. Ez az állítás nem teljesen igaz, de talán elég szemléletes a különbség megértéséhez.) Kezdjük a Halászbástyával! Kattintsunk a szereplők között a Halászbástya1 nevű szereplőn (ez a Halászbástya feliratot mutató szereplő). Ha kijelöltük, kattintsunk rá most az egér jobb gombjával, majd a helyi menüből válasszuk a Cast member script menüpontot! Újra megjelenik a szkripteditor, de a fejlécére nézve láthatjuk, hogy most nem behavior készül, hanem egy cast member script. Láthatjuk továbbá, hogy nem az exitframe eseménykezelő váza készült el a szerkesztőben, ami logikus is. Most nem egy képkockához relt szkriptet írunk, hanem egy a képernyőn megjelenő sprite-hoz. Ezen nem értelmezhető az exitframe esemény, hiszen az csak egy képkockán következhet be, egy sprite-on (pl. képen vagy szövegen) nem. Egy képernyőn elhelyezett sprite-on viszont történhet az, hogy rákattintunk az egérrel, sőt, ez elég gyakran be is következik. Éppen ezért a cast member scriptek esetében az alapértelmezett eseménykezelő a mouseup lesz, ami akkor következik be, amikor az adott szereplő fölött állva az egérrel a lenyomott bal gombot felengedjük. (Eszerint a kattintás akkor következik be, amikor elengedjük a bal gombot, nem pedig akkor, amikor lenyomjuk azt.) Mi történjen, amikor a képenyőn éppen látszik a Halászbástya felirat, és a felhasználó rákattint? Nyilván az, hogy jelenjen meg a hozzá tartozó képernyő azaz ugorjon a lejátszófej arra a képkockára, amit Halászbástya markernévvel jelöltünk meg. Ehhez írjuk meg a szükséges eseménykezelőt: on mouseup go to frame "Halászbástya" Vigyázat! Sokszor elkövetett hiba, hogy összekeverik a go to the frame és a go to frame képkocka utasításokat, és létrehozzák belőle az értelmetlen go to the frame képkocka utasítást. A frame 10 a 10. kockát jelenti, a the frame pedig az éppen aktuálisat. Nincs értelme a the frame 10 kifejezésnek, tehát véletlenül se írjuk a fenti szkriptbe helyére ezt az utasítást: go to the frame "Halászbástya"! (Ha mégis, akkor a prezentáció nem fog futni, hanem hibaüzenetet ad a Director.) Hasonlóképpen járjunk el a Hősök tere helyszínével is. Figyeljük meg, hogy létrehozott két szkript nem fog új szereplőként megjelenni a szereposztásban, de a két szkripttel felruházott szereplő új ikonokat kap: a szereplők előnézeti képének bal alsó sarkában egy papírlap jelenik meg (lásd kép). Mentsünk munkánkat, majd a lejátszófejet az első képkockára mozgatva indítsuk el újra a bemutatót. A főmenüben a Halászbástya gombra kattintva rövid ideig a Halászbástya oldala lesz látható, aztán egy pillanatra semmi, majd hamarosan a Hősök tere, végül újra a főmenü. Mi lehet a baj? 24