vrijdag 6 juli 2012

Over mijn Flashopdracht

Vandaag (6 juli 2012) heb ik één van mijn opdrachten voor school afgerond

Het is de MM-6 Flash movie. Ik heb gekozen voor een fansite van mijn favoriete band Metallica, waar ik al sinds 1992 gek op ben en waar ik diverse concerten van heb bezocht

Metallica Sinterklaas…

Ik richt dit blog op mijn medeleerlingen, omdat ik van een bepaald kennisniveau moet uitgaan, maar uiteraard is iedereen welkom om over mijn ervaringen te lezen

Ik had al een tijd niet meer geblogd en als ik het wel deed, ging het over de verdrietige toestanden thuis na het overlijden van mijn moeder
(zie hieronder : * 1)
Maar nu wil ik het voor het eerst eens over school hebben en dan met name over wat ik al of niet geleerd heb

Hoewel de opdracht uit meerdere movies in Flash moet bestaan, praat ik voor het gemak liever over een website. Mijn werk staat dan ook online
(zie hieronder : * 2)


Mijn site heet “Metallica Online” en bestaat uit 6 movies. De hoofd (container) movie betaat uit een background met een knoppenbalk, waarmee de verschillende hoofdstukken gekozen kunnen worden. Die hoofdstukken zijn :

1. Video
2. Audio
3. Photo
4. Member


Ook is via de mainmovie een 6e movie te bekijken, die de bandwidth van je Internetverbinding aangeeft. Je kunt een analoog ogend metertje bekijken, dat voortdurend een 33KB plaatje downloadt en de tijd, die hij daar voor nodig heeft omzet in een aanwijshoek voor de naald van de meter


Voor hoofdstuk “Video" heb ik gebruik gemaakt van de YouTube API. Deze software is goed gedocumenteerd
(zie hieronder : * 3)
Wanneer je de instructies en methods eenmaal begrijpt, kun je een player maken met heel veel mogelijkheden.
De filmpjes van Metallica hebben op YT niet allemaal reclameboodschappen en die zie je dus ook niet in mijn player

Omdat het laden van de YT player zwaar op de grafische kaart leunt, moest ik leren om mijn Tweens op de juiste momenten te starten.
Overigens leerde ik hierbij, dat je Tweens ook in een Array kunt stoppen. Het is namelijk zó, dat de zg. “Garbage Collection” je (local) Tween variabelen opruimt, als de animatie verstoord wordt. Nadeel van deze methode is, dat je wel track moet houden, wáár je Tweens in die Array zitten, als je ze opnieuw wilt benaderen (var tweenIndexCounter:int ? ;-). Maar met deze methode lopen je animaties wel vaker() naar het einde, zoals je dat bedoeld had

Mijn videoplayer is de hoofdmoot van mijn site geworden. Ik heb daar dan ook het meeste werk in gestoken. Hij is inmiddels uitontwikkeld en oeverloos getest. Het is maar goed, dat ik zo gek ben op Metallica, want ik heb de nummers bij het ontwikkelen (bijna) vaker gezien en gehoord dan mij lief is bij het continue opstarten van deze movie.
Over deze .swf ben ik het meest tevreden. Er zitten bij mijn weten geen echte fouten meer in (wat je van de andere filmpjes helaas niet kan zeggen)

Ik heb deze opdracht met veel plezier gemaakt. Dankzij mijn eerdere ervaringen met BASIC heb ik deze taal, Flash ActionScript 3.0, goed op kunnen pikken en voor een eerste project ben ik redelijk tevreden. Ja, redelijk…
Want ondanks, dat ik de meeste tijd heb van al mijn klasgenoten en ik er wel 6 weken continue aan heb gewerkt ben ik niet klaar met mijn project…

Ik wist het van mijn vroegere programma’s wel : ik begin eenvoudig, maar mijn ideeën blijven groeien en mijn wensen worden gedurende de ontwikkeling steeds groter. Mijn Visual Basic projecten kwamen dan ook eigenlijk nooit aan hun voltooiing toe. En ook nu was het maar kantje boord, of ik wel een beoordeelbare site kon gaan tonen aan de leraar.
Ik heb echt veel wensen niet kunnen realiseren en ook heb ik zelfs een paar problemen niet op kunnen lossen. En dat zit me NIET lekker!!

Ik moet leren om een goede workflow te ontwikkelen : eerst alle movies in basis aanmaken en eventueel alle onderlinge communicatie via Global Vars en Shared Library goed uittesten! (uitroepen is aan mijzelf gericht, hahaha)

Ontwikkelen = Workflow = Workflow = Workflow = Workflow………


Zoals bijvoorbeel bij de Audio player : Hier heb ik geen tijd gehad om animaties te creëren en grafisch vind ik de movie niet af.
Deze .swf haalt MP3’s en hun info van een online pagina van mij via een XML file. Dat bevalt me wel, XML; op deze manier kan ik zonder de Flash omgeving mijn MP3’s en hun namen eenvoudig aanpassen aan nieuwe songs.
Ook de PeakHold VU meters vind ik erg leuk, alleen had ik ook de luidsprekers willen animeren, maar wederom …tijdgebrek…


De Photo movie is redelijk gelukt na heel veel inspanningen om hier de Tweens goed te krijgen. Wederom maak ik voor de content gebruik van de mooie XML techniek.
Ook hier had ik weer veel problemen, zoals in het hele project, om de lagen goed te krijgen. Eerlijk gezegd snap ik nog geen bal van AddChild(ren)…Movieclips en Textfields verschijnen op de meest ongewenste layers en ondanks heel veel inspanningen werkt een aantal objecten ook nu nog steeds niet goed…Al was het bijvoorbeeld maar, omdat mijn objecten zich online weer anders gedragen dan in de Flash omgeving…Om crazy van te worden, pfffff….Hier ligt nog een aantal leermomenten op mij te wachten, haha


De Members movie is mijn liefste kindje, het bouwen ging voorspoedig en hier was ik al snel mee op orde.
Deze .swf werkt goed! Hij stuurt een mail naar de afzender via een .php pagina op mijn website wkwebsites.com

Al met al heb ik met tegenzin besloten om mijn project in te leveren. Ik heb er serieus heel veel tijd ingestopt en toch is hij niet perfect, maar nu is het tijd om me echt in PHP te gaan verdiepen. Tenslotte kom ik voor die andere (HTML/CSS/PHP) eindopdracht niet meer weg met de Server Behaviours van DreamWeaver, waar ik 7 jaar lang dankbaar gebruik van heb gemaakt. Nu is het tijd om zelf PHP te gaan begrijpen!

Ik heb de combinatie AS 3.0 schrijven en PHP leren wel zwaar gevonden. Het zijn tenslotte toch twee heel verschillende talen, met name qua toepassing. Als amateur autist kan ik me maar in één project tegelijk vreselijk verdiepen, haha

AS 3.0 blijft, en daar moest ik wel even aan wennen, een taal om filmpjes mee te besturen en PHP is mooie code, die je met de server laat communiceren. Dat ga ik nu leren en ook daar heb ik echt zin in

Codewriting is my pleasure ☺

Willem

Links :

(* 1) Eerder Blog

(* 2) Mijn site online

(* 3) YouTube API

Als je wilt reageren : dit geeft nogal eens problemen, heb ik gehoord, maar email gerust naar willemkro@gmail.com