Optimisation - Techniques d'animation par pixels - Java - Programmation
Marsh Posté le 12-10-2006 à 22:16:20
Salut!
Regarde du coté du double buffering. J'y connais pas grand chose mais je vais devoir m'y mettre un de ces 4.
Normalement c'est pas très compliqué.
Marsh Posté le 20-09-2006 à 17:14:42
Bonjour,
Voila, j'ai construit une applet (Swing) qui affiche une animation et je me pose 2 questions paske je trouve que ca rame un peu :
**********
La premiere :
**********
Chaque image de l'animation est une image "rendue" par un petit moteur, c'est à dire que je calcule chaque pixel de l'image à partir de plein de parametres...
Donc, j'ai fait un tableau d'int : buffer[hauteur*largeur] qui contient tout les pixels de l'image.
Les pixels sont calculés dans un thread.
J'ai declaré un MemoryImageSource qui prend sa source dans le buffer.
Lors du paintComponent, je fait un bête g.drawImage(source)
Y-a-t-il mieux pour afficher à l'ecran un tableau de pixels ?
Une autre technique que le MemoryImageSource ?
**********
La seconde :
**********
Pour faire evoluer les parametres de mon animation, j'ai essayé avec un thread, qui fait une pause de 40ms entre chaque boucle, et j'ai essayé avec un timer, appelé toutes les 40ms
Donc logiquement, si j'incremente de 1 un parametre de l'animation à chaque mise à jour, je devrais avoir 25 incrementations par seconde (1000/40)
Or, des fois j'ai 15, des fois j'ai 30....
Est-ce le timer ou le thread qui n'est pas stable ?
Ou je m'y prend mal ?
(je precise que à chaque appel de la mise à jour des parametres, il n'y a que quelques additions, rien de lourd qui ferait ralentir tout ca, et c'est dans un thread separé du reste...)
Merci !