è un argomento un po' oscuro
per quanto mi riguarda, tempo fà ho creato una proto che funzionava benino, per i rallentamenti/molleggiamenti
l'avevo già postata mi pare :master:
tutta la parte sotto la proto è solo per verificare che funzioni, in realtà le azioni vengono svolte totalmente dalla proto e non dal resto del codicecodice:MovieClip.prototype.myTween = function(clip, xArr, yArr, frames){ clip.xArr = Math.floor(xArr); clip.yArr = Math.floor(yArr); clip.frames = Number(frames); this.onEnterFrame = function(){ if(Math.floor(clip._x) != clip.xArr && Math.floor(clip._y) != clip.yArr){ xspost = (clip.xArr-clip._x)/frames; yspost = (clip.yArr-clip._y)/frames; clip._x += xspost; clip._y += yspost; } else { delete this.onEnterFrame; clip._x = clip.xArr; clip._y = clip.yArr; } } } _root.palla.myTween(_root.palla, _root._xmouse, _root._ymouse, 8);
la proto può essere richiamata in un qualunque momento, in qualunque "attività"
ad esempio metti che io abbia un pulsante "puls" e il solito clip "palla" a coordinate 0,0 nello stage, se faccio
avrò che quando clicco sul pulsante, il mio clip si muove a coordinate 400,300codice:puls.onRelease = function(){ _root.palla.myTween(_root.palla, 400, 300, 8); }
ah, per quanto riguarda la fluidità del movimento, dipende da due fattori, uno è "frames" e lo puoi cambiare a piacimento fino ad un minimo (perchè tutto funzioni) di 0.56 (movimento elastico), l'altro fattore da non sottovalutare è il framerate del filmato, io di solito lo tengo a 60fps e i movimenti risultano fluidi senza grosso dispendio di cpu
![]()

Rispondi quotando