jueves, 19 de febrero de 2009

Come creare un movimento circolare in modo facile e veloce



Create un movimento circolare puo' essere lavoro lungo e laborioso.
Un movimento di questo genere e' utile per muovere particelle, camere o layers all'interno di una composizione.

Nel mio caso e' stato usato per collegare alla position di un NULL l'emitter di Trapcode Particular in modo tale da avere un movimento circolare di particelle.

Ho creato quindi un NULL nel quale ho inserito tre EXPRESSION CONTROLS e cioe' due SLIDER e un ANGLE CONTROL. Li ho chiamati, in ordine:

Radius
Speed
Rotation Offset

Il primo SLIDER (Radius) controlla il raggio circolare del movimento.
Il secondo (Speed) la velocita' e il terzo (Rotation Offset) controlla il punto di partenza della rotazione intorno al cerchio virtuale creato.

A questo punto ho associato gli SLIDER ad una piccola programmazione sulla POSITION del NULL.
E cioe':

Radius = effect("Radius")("Slider");
Speed = effect("Speed")("Slider");
RotationOffset = effect("Rotation Offset")("Angle");

//

center = [this_comp.width/2,this_comp.height/2,0];
radius = 200;
angle = time * Speed + RotationOffset;
x = Radius * Math.cos(degreesToRadians(angle));
z = Radius * Math.sin(degreesToRadians(angle));
add(center, [x,z,0]);


A questo punto, giocando con i tre SLIDER creati in precedenza posso tranquillamente decidere come funzionera' il mio movimento circolare.
Che raggio avra', che velocita' e che rotazione.

Nel mio caso poi ho associato appunto l'EMITTER di Particular alla POSITION del NULL, ottenendo una perfetta creazione di un fascio di particelle circolare.

Provare per credere.