Come creare un effetto su testo


Gli effetti su testo si basano tutti sullo stesso sistema: applicare in sequenza, alle diverse lettere di una scritta, la stessa animazione. Questo viene fatto duplicando un movieclip, che contiene l'animazione, per tante volte quante sono le lettere che compongono la scritta, e assegnando di volta in volta un valore diverso al campo di testo contenuto nel movieclip.
Creiamo un effetto base, assolutamente banale, per capire il funzionamento.

1) Apriamo un nuovo filmato.

2)Selezioniamo lo strumento Testo e clicchiamo sullo stage scrivendo la lettera M.

3)Selezioniamo la casella di testo, allineiamo al centro e la convertiamo in testo dinamico, a singola linea

4)Associamo alla casella variabile il nome "testo" e incorporiamo solo i caratteri necessari (in questo caso maiuscole e il punto).

5)Selezioniamo la il carattere sullo Stage, e lo convertiamo in movieclip con F8 lasciando il nome di default:Symbol1. Andiamo su Window e attiviamo "Istanza", come nome di istanza diamo "animazione".

6) Convertiamo nuovamente in movieclip, sempre con F8 e su Istanza diamo come nome: "lettera".


7) A questo punto abbiamo sullo stage il movieclip "lettera", che contiene il movieclip "animazione", che contiene il campo di testo "testo".

8) Creiamo, tramite il pulsante "+" nella libreria, un nuovo movieclip, che chiameremo: "controllo".

9) Torniamo alla timeline principale della Scena 1 e trasciniamolo dalla libreria allo stage, in un punto qualsiasi, per comodit� meglio fuori dall'area visibile.

10) Selezioniamo il movieclip depositato accanto allo Stage, apriamo il pannello Azioni, e associamo:

onClipEvent ( load) {
scritta = "...EFFETTO DINAMICO SU TESTO...";
i = 0;
max = length(scritta);
kerning = 15;
size = 150;
_parent.lettera. _visible = 0;
}
onClipEvent ( enterFrame) {
if (i<max) {
i++;

mc = "nuovo"+i;
duplicateMovieClip ("_parent.lettera", mc, i);
_root[mc].animazione.testo = substring(scritta, i, 1);
_root[mc]._x = (i*kerning);
_root[mc]._xscale = size;
_root[mc]._yscale = size;
}
}

 

Vediamo il significato riga per riga:

 

// al caricamento del movieclip
onClipEvent (load) {
// setta la variabile "scritta" con la stringa contenuta tra le virgolette
scritta = "...EFFETTO DINAMICO SU TESTO...";
// setta la variabile "i" uguale a 0
i = 0;
// setta la variabile "max" uguale alla lunghezza di "scritta"
max = length(scritta);
// setta la variabile "kerning" uguale a 15 (determiner� la posizione delle lettere)
kerning = 15;
// setta la variabile "size" uguale a 150 (determiner� le dimensioni delle lettere)
size = 150;
// rendi invisibile il movieclip "lettera", che verr� duplicato
_parent.lettera._visible = 0;
}
// ogni volta che il movieclip viene riprodotto
onClipEvent (enterFrame) {
// se la variabile "i" � inferiore a "max" (cio� alla lunghezza di "scritta")

if (i<max) {
// aumenta la variabile "i" di una unit�
i++;
// attribuisci alla variabile "mc " il valore di "nuovo" + i

// (quindi, all'aumentare del valore
// della i, sar� man mano: nuovo1, nuovo2, nuovo3...)

mc = "nuovo"+i;
// duplica il movieclip "lettera", dagli il valore di "mc" come nome e dagli

// profondit� "i"
duplicateMovieClip ("_parent.lettera", mc, i);
// setta la variabile "testo" contenuta in "animazione" contenuto in "mc"
// con il valore della lettera di "scritta" di posizione "i" (una alla volta tutte)

_root[mc].animazione.testo = substring(scritta, i, 1);
// sposta il movieclip duplicato a destra per il valore di i per "kerning"
_root[mc]._x = (i*kerning);
// setta larghezza e altezzad del duplicato con il valore di "size"
_root[mc]._xscale = size;
_root[mc]._yscale = size;
}
}


Esportiamo il filmato, ed otteniamo:


Nulla di pi�. Ora vogliamo abbellire l'effetto. Editiamo il movieclip "lettera", e creiamo una semplice interpolazione con l'effetto alpha sul movieclip "animazione". Andiamo al frame 30, premiamo F6. Inseriamo uno stop(). Torniamo al primo, settiamo, tramite il pannello "Effetti", l'alpha a zero. Clicchiamo ovunque sulla timeline tra i due frame, e inseriamo una interpolazione di movimento.

Esportiamo nuovamente:

 

Vogliamo aggiungere un effetto rotazione con diminuzione delle dimensioni dei caratteri. Editiamo nuovamente "lettera": nel primo frame, ruotiamo il movieclip "animazione", e lo ingrandiamo:


Esportiamo di nuovo.



Indietro