Animations en Java

le_dahu Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   -  
rameur Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour a tous !

Je suis en train de programmer un petit jeu en Java, et j'ai un probleme au niveau des animations. En gros, pour effectuer une animation, j'utilise le schema suivant :
while ( ... ) {
   imageAffichee = imagesDisponibles[index++ % imagesDisponibles.length];
   repaint();
   Thread.sleep(40);
}

Le Thread.sleep(40) permet de temporiser l'animation, la valeur 40 lui donnant une vitesse convenable sur ma machine.

Le probleme vient du fait que, si je change de machine, la vitesse d'execution de l'animation est modifiee, et malheureusement, elle est generalement trop lente ou trop rapide par rapport a ce qu'elle devrait etre.

Donc, arrive maintenant la question : est-il possible de rendre la vitesse d'animation independante de la machine sur laquelle elle est executee ?

Merci d'avance...

A+
A voir également:

3 réponses

le_dahu Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   51
 
C'est encore moi !

Personne n'aurait une petite idée qui pourrait me mettre sur la voie ?
Je voudrais simplement savoir s'il est possible de rendre la vitesse d'une animation indépendante de la machine sur laquelle elle est exécutée...
Merci :-)

A+
0
rameur Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
il se peut que parfois la jvm ignore l appel a sleep()
ce qui provoque une Exception , tu devrai prevoir quoi faire dans le bloc catch() ou finally {}
0
le_dahu Messages postés 141 Date d'inscription   Statut Membre Dernière intervention   51
 
Salut, et merci pour ta réponse :-)

Il se trouve qu'aucune exception n'est levée pendant le sleep. Je penche plutôt pour une durée de traitement autour du sleep (genre affichage et cie) variable suivant les ordinateurs...
En fait, je voudrais savoir s'il existe une autre méthode pour faire des animations que le fameux "j'affiche, j'attends, je modifie, j'affiche, j'attends,..."

Merci encore !
A+


Le dahu -  Si à gauche j'ai l'amont, c'est bon.
           Si à gauche j'ai l'aval, j'suis bancal.
0
rameur Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
javax.swing.Timer
t as deja essaye excuse pour les accents mon clavier est mal configure
0