double buffer [JAVA] - Programmation
Marsh Posté le 16-05-2001 à 14:15:00
tu l'as faite Runnable ton applet ?
Marsh Posté le 16-05-2001 à 17:51:06
essai de redessiner le minimum, par exemple avec des zones de cliping, surtout s'il y a une image en fond.
Marsh Posté le 16-05-2001 à 17:51:48
Si tu n'effaces pas l'image précédente et que tu te contentes de dessiner en sur-impression, je dirais que oui, le double-buffering est inutile.
Sinon, pour t'aider plus, il nous faudrait ton code...
Marsh Posté le 16-05-2001 à 18:20:14
oui en fait j'ai une image de fond et je reecris par dessus
pour la source je veux bien mais y en a beaucoup !!
Marsh Posté le 17-05-2001 à 13:18:47
pour eviter que ca rame il faut eviter de redimmensionner tes images.
il faut mieux les retoucher avec un logiciel pour les mettres a la bonne taille
Moi ca faisait pareil avant et plus maintenant...
Aussi pour l'image de fond il vaut mieux plusieurs petites qu'une grande.
Pour que ca marche encore mieux tu peut utiliser un mediaTracker pour precharger les images mais je sais pas si ca marche pour les applets...
Bon courage
Marsh Posté le 17-05-2001 à 16:44:22
Tu n'as pas compris l'utilite du doublebuffer..
Dans ton cas, ca n'accelere pas l'affichage
c'est juste un tip pour rendre l'affichage plus smooth
c'est a dire effectuer le trace "hors ecran" avant
de tout balancer d'un coup sur la zone d'affichage
(sinon tu vois le trace s'effectuer et si tu as trop de choses
a tracer et bien ca a tendance a clignoter..)
A+
LEGREG
Marsh Posté le 17-05-2001 à 17:09:59
bon en fait j'ai reussi a utiliser convenablement le double buffer.
Seulement, a chaque repaint, je dois redessiner un "fond", c'est a dire une partie qui est toujours la meme.
Je me demandais si on ne pouvait pas créer une image ou un truc dans le genre a partir de ce qui est contant, ecrire sur ce fond puis le charger, pour gagner du temps. Parce qu'en fait, a chaque repaint, je redessine une partie qui est tjrs la meme
Marsh Posté le 16-05-2001 à 14:01:06
je dois mettre a jour l'affichage d'une applet 20 fois par seconde en 800*600 environ.
J'ai essayé d'utiliser un double buffer pour accelerer l'affichage, mais j'obtient un truc qui fait ramer mon ordi a mort.
C moi qui me suis planté, ou c le fait de faire un g.drawImage(offScreenImage,0,0,this); 20 fois par seconde qui le fait ramer ??
Vu que les modifs consistent uniquement a rajouter des cercles a chaque nouvel affichage, est ce que le double buffer a un interet ici ??
merci