[Squeak-fr] Morphic animation, c'est lent.

Frédéric Ferrère frederic.ferrere at free.fr
Dim 7 Juin 19:15:08 UTC 2009


Bonsoir,

je viens de me rendre compte que la période
minimum que peut utiliser un morph entre deux appels
à la fonction step est de 20 millisecondes (lié je suppose à la variable 
MinCycleLapse de la classe WorldState).

C'est à dire qu'un Morph, en parcourant l'écran pixel par pixel,
ne peut pas parcourir une distance de 500 pixels (ce qui est peu)
en moins de 10 secondes (c'est long).

Seule solution, créer une boucle infini et dessiner dans un canvas 
(FormCanvas plus précisément).

Seulement, cela bloque l'environnement et la gestion des évènements 
claviers par exemple
me pose problème. J'ai bien essayé de jouer avec la classe Sensor, mais 
j'ai lu
sur plusieurs site qu'il était fortement déconseillé de l'utiliser.

Du coup je suis un peu perdu et si vous avez quelques pistes à me proposer
ça m'aiderai beaucoup.

J'ai bien essayé de diminuer la variable MinCycleLapse (classe 
WorldState, méthode initialize)
à 4 au lieu de 20, mais le résultat n'est pas satisfaisant, les 
animations n'ont pas
"un rythme" constant.
Les nombreux évènements doivent se
sentir un peu à l'étroit dans cette fenêtre de temps de 4ms.

Merci.

Cordialement,
--
Frédéric


Plus d'informations sur la liste de diffusion Squeak-fr