mBed Interactor Pro -- interaktivnφ multimΘdia pro Web
Roman Bartßk
DneÜnφ webovΘ strßnky jsou stßle ₧iv∞jÜφ -- a to jak v oblasti multimedißlnφho obsahu, tak i pokud jde o interaktivnφ chovßnφ. Vytvß°et veÜkerΘ interaktivnφ efekty ruΦn∞ v n∞kterΘm z podporovan²ch programovacφch jazyk∙ (Java, JavaScript, VBScript) je ale p°ece jen zdlouhavΘ a pro kreativnφ nßvrhß°e ne v₧dy p°ijatelnΘ. Proto se na trhu objevujφ autorskΘ nßstroje, umo₧≥ujφcφ p°ipravovat interaktivnφ multimedißlnφ obsah Webu stejn∞ snadno jako v p°φpad∞ multimΘdiφ pro CD-ROMy. Mezi takovΘ nßstroje pat°φ takΘ nov² mBed Interactor Pro firmy mBed Software (http://www.mbed.com).
Principy
mBed Interactor Pro 1.2 je vlastn∞ ji₧ 3. verze multimedißlnφho autorskΘho nßstroje, kterß si dφky °ad∞ nov²ch vlastnostφ, vyslou₧ila p°φdavek "profesionßlnφ vydßnφ". mBed Interactor umo₧≥uje navrhovat tzv. mbedlety, tj. interaktivnφ multimedißlnφ obsah, kter² lze formou vno°en²ch objekt∙ vklßdat do webov²ch strßnek. Pro prohlφ₧enφ takov²ch strßnek je potom pot°eba webov² prohlφ₧eΦ s nainstalovan²m zßsuvn²m modulem.
Zßkladem mbedletu je obdΘlnφkovß oblast danΘ velikosti, do kterΘ se umis¥ujφ tzv. herci. T∞ch je k dispozici celkem 14 typ∙ a ka₧d² z nich slou₧φ k trochu jinΘmu ·Φelu. Herci umo₧≥ujφ zobrazit (p°ehrßt) r∙znΘ druhy multimedißlnφch dat, mohou spolu navzßjem komunikovat a n∞kte°φ z nich jsou schopni reagovat na akce u₧ivatele. Herce lze p°izp∙sobit vlastnφm pot°ebßm zadßnφm jeho obsahu, vlastnostφ a definovßnφm tzv. handler∙.
V zßvislosti na typu herce m∙₧e b²t jeho obsahem text, obrßzek (obrßzky), zvuk nebo film. Zatφmco text se zadßvß p°φmo v Interactoru, zbylou trojici typ∙ dat je pot°eba p°ipravit p°edem a Interactor potom obsahuje jen odkazy na p°φsluÜnΘ soubory. V tomto druhΘm p°φpad∞ mi trochu vadilo, ₧e v p°φsluÜnΘm okn∞ zobrazuje Interactor celou cestu k souboru, tak₧e pokud je cesta delÜφ, vlastnφ nßzev souboru u₧ nenφ vid∞t.
TakΘ vlastnosti herce jsou zßvislΘ na jeho typu. M∙₧e mezi n∞ pat°it nap°. poloha, viditelnost, posouvatelnost (scrollable) nebo webov² odkaz. Je mo₧nΘ definovat i u₧ivatelskΘ vlastnosti, kterΘ potom slou₧φ podobn∞ jako prom∞nnΘ v programovacφch jazycφch. T°etφ prvek v definici herce, handlery, umo₧≥uje snadno definovat reakce na udßlosti (vrßtφme se k nim v Φßsti o interaktivit∞). P°i prßci s vφce stejn²mi nebo podobn²mi herci se uplatnφ tzv. prototypy (vzory) herc∙, kterΘ Üet°φ nejen Φas p°i nßvrhu mbedletu, ale zkracujφ takΘ nahrßvacφ Φas strßnky.
Jako sprßvn² autorsk² nßstroj nabφzφ Interactor vizußlnφ prost°edφ pro nßvrh mbedlet∙. Herce tak m∙₧ete v mbedletu rozmis¥ovat pomocφ operace tßhni a pus¥, jejich vlastnosti se vypl≥ujφ v p°ehledn²ch dialogov²ch oknech a p°φkazy se vyvolßvajφ z nabφdek nebo jeÜt∞ lΘpe z p°ehledn²ch liÜt s nßstroji. Interactor Pro p°inßÜφ takΘ novΘ profesionßlnφ vlastnosti, jako je okno historie zm∞n, kterΘ umo₧≥uje vrßtit provedenΘ ·pravy rychle zp∞t. P°i nßvrhu mbedlet∙, kde jsou jednotlivφ herci navzßjem siln∞ provßzßni, je zase k nezaplacenφ okno zßvislostφ p°ehledn∞ ukazujφcφ vztahy mezi herci.
V pr∙b∞hu nßvrhu mbedletu je generovßn textov² soubor obsahujφcφ kompletnφ popis herc∙ a jejich vlastnostφ. Tento soubor je Φiteln² ve vÜech textov²ch editorech, tak₧e programßtorsky zalo₧enφ nßvrhß°i mohou mbedlety vytvß°et p°φmo bez pou₧itφ vizußlnφho autorskΘho nßstroje.
Obrßzky, text a animace
O hercφch zatφm byla °eΦ jen v obecnΘ rovin∞, podφvejme se nynφ, jakΘ konkrΘtnφ mo₧nosti Interactor Pro nabφzφ. Obrßzky ve formßtu GIF a JPEG umo₧≥uje do mbedletu p°idat herec Picture. Krom∞ obrßzku m∙₧e tento herec obsahovat takΘ masku (alfa kanßl) definujφcφ pr∙hlednost (viditelnost) jednotliv²ch Φßstφ obrßzku, a v²sledn² obrßzek tedy m∙₧e mφt zcela libovoln² tvar. Pohyblivou obdobou obrßzku je herec Sprite, tvo°en² posloupnostφ obrßzk∙ a p°φsluÜn²ch masek. Sprite tak m∙₧e snadno vytvß°et jednoduchΘ animace -- zajφmavΘ na tom je, ₧e jednotlivΘ obrßzky se mohou m∞nit nejen s Φasem, ale takΘ s ura₧enou vzdßlenostφ nebo sm∞rem pohybu. Herec Sprite b²vß proto Φasto svßzßn s hercem Path, kter² urΦuje cestu, po kterΘ se bude animace pohybovat (sßm vlastn∞ nenφ vid∞t). èkoda jen, ₧e lze stßle definovat jen 3 typy cest: ·seΦka, oblouk a Bezierova k°ivka. Pro slo₧it∞jÜφ trasy je nutnΘ spojit n∞kolik herc∙ Path. Na druhou stranu -- zajφmavou vlastnostφ je mo₧nost urΦit poΦßteΦnφ a koncov² ·sek pro postupn² rozjezd a "brzd∞nφ" animace.
Obrßzky hrajφ svoji roli takΘ u herce Button, kter² je vlastn∞ tvo°en trojicφ obrßzk∙: zßkladnφ pozice, stisknuto a ukazatel nad tlaΦφtkem, vÜe op∞t s p°φsluÜn²mi maskami. Nastavenφm p°φsluÜnΘ vlastnosti lze tlaΦφtko snadno zm∞nit na p°epφnaΦ, kter² po stisknutφ z∙stane v poloze stisknuto. Pou₧itφ herce Text je jasnΘ ji₧ z jeho nßzvu. Text lze do tohoto herce nahrßt bu∩ z textovΘho souboru, nebo je mo₧nΘ ho zadat p°φmo v Interactoru, kde lze nastavit i klasickΘ textovΘ parametry, jako je pφsmo, styl, zarovnßnφ nebo t°eba vyhlazenφ. Interactor obsahuje takΘ herce Box pro tvorbu obdΘlnφk∙ (i vypln∞n²ch), tak₧e pro tento typ obrßzku nenφ nutnΘ pou₧φvat herce Picture. Zajφmav² je herec Sublet, umo₧≥ujφcφ do mbedletu vno°it dalÜφ mbedlet.
Audio a video
Jakß by to byla multimΘdia, kdyby neobsahovala zvuk a film. Ji₧ p°edchozφ verze Interactoru umo₧≥ovaly prßci se zvukem, Interactor Pro nov∞ p°idßvß takΘ podporu videa.
Pro prßci se zvukem slou₧φ dvojice herc∙: Sound a Audiostream. Sound umo₧≥uje p°ehrßvßnφ zvukov²ch soubor∙ ve formßtech AU, WAV a MIDI, zatφmco Audiostream umo₧≥uje p°ehrßvßnφ RealAudio dat. Zßkladnφ rozdφl mezi ob∞ma typy herc∙ je v tom, ₧e RealAudio data lze p°ehrßvat v pr∙b∞hu jejich p°enosu po sφti.
TakΘ pro prßci s videem je k dispozici dvojice podobn²ch herc∙. Herec Movie umo₧≥uje p°ehrßvßnφ QuickTime film∙ a vzhledem k tomu, ₧e QuickTime se stßvß Üiroce uznßvan²m multimedißlnφm standardem, bude v²znam tohoto herce v budoucnu jist∞ nar∙stat. Druh² herec, Videostream, umo₧≥uje p°ehrßvßnφ film∙ ve formßtu RealVideo. Bohu₧el, o tuto mo₧nost jsou ochuzeni majitelΘ poΦφtaΦ∙ Macintosh, pro kterΘ zatφm nejsou dostupnß p°φsluÜnß API od Real Networks.
Efekty a interaktivita
Animace a video p°idaly do mbedletu trochu pohybu, k dispozici je ale hned n∞kolik dalÜφch herc∙ pro o₧ivenφ mbedletu. O herci Path, kter² umφ p°evΘst dalÜφho herce po zvolenΘ k°ivce, zde ji₧ °eΦ byla. Dßle tady mßme herce Effect pro p°idßnφ p°echodov²ch efekt∙. Effect op∞t pracuje s dalÜφm hercem, typicky s obrßzkem, a urΦuje, jak se dan² herec objevφ na scΘn∞ (nap°. se vyno°φ nebo p°esune ze zvolenΘ strany). Efekt∙ m∙₧e b²t pro danΘho herce klidn∞ n∞kolik, zßle₧φ jen na tom, kter² bude vyvolßn.
Zatφmco Path a Effect provedou po aktivaci s hercem p°φsluÜnou akci, dalÜφ herec Control je schopen postupn∞ m∞nit zvolen² parametr jinΘho herce. Vlastn∞ se jednß o jak²si posuvnφk, kter² m∙₧e u₧ivatel nastavovat a m∞nit tak hodnotu vybranΘho parametru (nap°. rychlost animace, polohu apod.) dalÜφho herce. Posuvnφk m∙₧e fungovat i v rovin∞, tj. lze narßz nastavovat hodnoty 2 parametr∙. Poslednφ z herc∙, Score, slou₧φ pro koordinaci akcφ n∞kolika dalÜφch herc∙. Na ΦasovΘ ose (znßmΘ z jin²ch multimedißlnφch autorsk²ch program∙) tak lze snadno navrhnout Φasov² sled akcφ u jednotliv²ch herc∙.
Definicφ herc∙ konΦφ vizußlnφ fßze nßvrhu mbedletu a nastßvß fßze p°idßnφ interaktivnφho chovßnφ, tj. reakcφ na u₧ivatelovy pokyny. Jak bylo °eΦeno v ·vodu, ka₧d² herec mß p°i°azeny tzv. handlery, co₧ nenφ nic jinΘho ne₧ popis reakcφ herce na udßlosti. Takovou udßlostφ m∙₧e b²t stisknutφ tlaΦφtka myÜi, kdy₧ je ukazatel v prostoru herce, ale t°eba i start mbedletu nebo ukonΦenφ p°enosu dat pot°ebn²ch pro zobrazenφ herce. Udßlost lze navφc doplnit podmφnkou na hodnotu zvolenΘho parametru. Nastane-li p°φsluÜnß udßlost a podmφnka je spln∞na, provedou se postupn∞ p°i°azenΘ akce, kterΘ nap°. definujφ spuÜt∞nφ animace, p°ehrßnφ zvuku nebo videa. P°esto₧e se to trochu podobß programovßnφ, u₧ivatel nenφ p°i definici handler∙ odkßzßn na textovΘ zadßnφ k≤du. StaΦφ jen vybrat herce, kter² bude akci provßd∞t, a akci pak lze zadat v²b∞rem z nabφdky, kterß se automaticky p°izp∙sobuje mo₧nostem zvolenΘho herce. Handlery tak dodßvajφ Interactoru pot°ebnΘ interaktivnφ chovßnφ, jejich pou₧itφ je ale natolik jednoduchΘ, ₧e nevy₧aduje programßtorskΘ znalosti.
Publikovßnφ
Jakmile je mbedlet p°ipraven, je mo₧nΘ nechat vygenerovat HTML k≤d s p°φsluÜn²m vno°en²m objektem. P°i generovßnφ lze nastavit °adu u₧iteΦn²ch parametr∙, a souΦßstφ k≤du tak m∙₧e b²t nap°. skript pro detekci prohlφ₧eΦe a pro automatickΘ naΦtenφ pot°ebnΘho zßsuvnΘho modulu. Dokonce lze vytvo°it statickou HTML strßnku, obsahujφcφ pouze obrßzkov² nßhled na mbedlet pro prohlφ₧eΦe bez p°φsluÜnΘho zßsuvnΘho modulu. Pokud chcete mbedlet vlo₧it do vlastnφ webovΘ strßnky, staΦφ jeho textov² popis vyst°ihnout a vlo₧it do HTML k≤du p°φsluÜnΘ strßnky (auto°i programu s tφm poΦφtali, a ve vygenerovanΘ HTML strßnce je jasn∞ oznaΦeno, co se mß kopφrovat). Vy₧adovßnφm p°φtomnosti zßsuvnΘho modulu v prohlφ₧eΦi se Interactor Pro trochu p°ekvapiv∞ vracφ k mo₧nostem verze 1.0. P°edchozφ verze 1.1.1 toti₧ byla schopna generovat takΘ DHTML strßnky, p°φpadn∞ mbedlet vklßdat jako javov² applet.
P°esto₧e Interactor Pro je zam∞°en p°edevÜφm na nßvrh multimΘdiφ pro Web, je mo₧nΘ vytvo°enΘ mbedlety distribuovat takΘ na CD-ROMech. TakovΘ mbedlety lze potom p°irozen∞ zobrazit ve webovΘm prohlφ₧eΦi, k dispozici je ale takΘ samostatn² p°ehrßvaΦ umo₧≥ujφcφ zobrazenφ mbedletu ve vlastnφm okn∞ (licenci na distribuovßnφ tohoto p°ehrßvaΦe je nutnΘ dokoupit). P°i pou₧φvßnφ samostatnΘho p°ehrßvaΦe je vhodnΘ mbedlet doplnit tlaΦφtkem s funkcφ Exit, jeho₧ stisknutφ aplikaci ukonΦφ.
Zßv∞r
mBed Interactor Pro se cenov∞ vyrovnal dvojici Shockwave a Director, kterß multimΘdiφm na Webu kraluje -- zßjemce p°ijde na 799 dolar∙, co₧ je pom∞rn∞ dost. Kladem jsou naproti tomu malΘ hardwarovΘ nßroky a snadnΘ ovlßdßnφ programu. To je opravdu jednoduchΘ, na druhou stranu, dφky mo₧nosti m∞nit °adu parametr∙ je program takΘ dostateΦn∞ pru₧n². Verze Pro p°idala podporu videa a n∞kterΘ schopnosti u₧iteΦnΘ pro nßvrh slo₧it∞jÜφch projekt∙. DrobnΘ problΘmy byly se stabilitou testovanΘ macovskΘ verze.
S programem je dodßvßn p°ehledn² elektronick² manußl ve formßtu PDF (p°edchozφ verze pou₧φvajφ HTML) a trojice ·vodnφch kurz∙, kterΘ umo₧≥ujφ rychle proniknout do taj∙ Interactoru. Tyto kurzy jsou navφc p°ipraveny p°φmo v Interactoru, tak₧e mohou samy poslou₧it jako v²ukov² materißl.