Nella costruzione di un filmato in Flash, la funzione delle scene è spesso sopravvalutata. Analizziamo brevemente i vantaggi e gli svantaggi dell'uso, dal punto di vista di chi crea il filmato: per chi lo guarda, infatti, la differenza tra una scena ed un'altra non è in alcun modo apprezzabile. Il flusso dell'animazione è assolutamente paragonabile al passaggio tra un frame ed un altro all'interno di una stessa scena.
Per questo motivo, non essendoci funzioni visibili nella riproduzione di un filmato, l'utilizzo si presenterebbe come inutile, o perlomeno superfluo.
La funzione più importante, nell'uso delle scene, è quella di creare un file sorgente "ordinato": il designer può trarre vantaggio dall'avere le diverse sezioni del progetto divise, e visualizzabili una per volta. In effetti, lo stravolgimento di una scena, a divisione completata, non tocca in alcun modo la composizione delle altre. Ma oltre ad essere la funzione più importante, è purtroppo anche l'unica. Considerando la progettazione stessa del software, da parte della Macromedia, si può notare come non sia stata curata e implementata più di tanto, dimostrando la poca considerazione in cui ne è tenuto l'uso.
Gli svantaggi sono molti di più, tutti facilmente ovviabili, naturalmente, ma altrettanto fastidiosi.
In breve alcuni dei più rilevanti
Il goto
Il Flash ha una definitiva difficoltà nel dare un target ad azioni rivolte a frame, considerando le scene.
Supponendo, ad esempio, di voler spostare la riproduzione del filmato dalla "scena 1" al quarto frame della "scena 2", il comando previsto dovrebbe essere:
gotoAndPlay
("scena 2", 4);
Questo comando funziona regolarmente, solo se viene dato al livello della timeline principale, sia associato ad un frame che a un pulsante. In qualsiasi altra posizione, l'indicazione della scena perde significato. Se il comando viene dato all'interno di un movieClip, per esempio, non produce effetti. Lo stesso vale per il comando che comprende il percorso completo, cioè:
_root.gotoAndPlay("scena2", 4);
Per ovviare il problema, bisogna riferirsi al numero di frame o alla label: anche queste soluzioni, d'altronde, necessitano di altri accorgimenti. Nell'indicare il numero del frame, bisogna considerare il numero progressivo partendo dalla prima scena. Per rimandare al primo frame della seconda scena, dove la prima ne ha 5, il comando corretto prevede, come target, il frame 5+1, cioè il sesto:
_root.gotoAndPlay(6);
Infatti _root.gotoAndPlay(1);
rimanderebbe in ogni caso al primo frame della prima scena, da qualunque posizione venga dato il comando.
Parimenti, quando si vuole usare una label, questa deve essere univoca all'interno dell'intero filmato: in caso di più frame con la stessa label, infatti, la riproduzione si sposterebbe sul primo frame con la label indicata, seguendo l'ordine gerarchico delle scene.
Il suono
La riproduzione dei suoni inseriti nei frame, nel passaggio da una scena all'altra, viene interrotta.
Con la fine del layer contenente il suono, finisce il suono stesso. Per ovviare a questo problema, si può procedere in diversi modi.
Il primo (e più semplice), è quello di inserire nuovamente il suono nella scena seguente, fermo restando che nel passaggio da una scena all'altra, il suono si interrompe alla fine della prima per iniziare da capo all'avvio della seconda.
Altra soluzione è quella di inserire i suoni all'interno di altri filmati, da caricarsi con un loadMovieNum
su livelli superiori al livello 0. In tal caso il suono resterebbe indipendente dal cambio di scena nel filmato principale.
Ancora, un metodo è quello di utilizzare l'attachSound
, che rende costante il suono attraverso le scene. Ma questa soluzione presenta il problema del preloader, tipico con l'uso di oggetti linkati. Nuovamente, quindi, il suono andrebbe inserito in un filmato esterno da caricarsi con un loadMovieNum
.
Le istanze
Tutti gli oggetti che devono essere presenti con le stesse funzioni in due scene diverse, devono essere riprodotti in entrambe, aumentando quindi il peso del filmato. Basti pensare che un'immagine, utilizzata come sfondo, potrebbe essere presente una sola volta in un filmato realizzato in una sola scena, mentre deve essere utilizzato distintamente tante volte quante sono il numero delle scene, quando queste siano più di una.
Nel caso di un singolo oggetto, la differenza tra le due situazioni potrebbe essere non troppo rilevante. Ma nel caso di scene più complesse, le cose cambiano: un gran numero di simboli che formano il contorno delle sezioni principali del filmato, come più suoni, o come anche una semplice barra di navigazione, aumentano il peso finale del progetto, che, nell'ottica dell'ottimizzazione per la pubblicazione sul web, potrebbe risultare meno conveniente.
In definitiva, se chi progetta il filmato non ha bisogno di una divisione a livello di spazio di lavoro, per poter visualizzare in maniera più ordinata il file sorgente, non ha alcun motivo pratico per utilizzare le scene. Si troverebbe infatti ad affrontare tutta una serie di piccoli inconvenienti per cui è necessario trovare una soluzione di volta in volta differente, senza migliorare in alcun modo il filmato, soprattutto all'occhio di chi lo guarda.