IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

2D Java Discussion :

Affichage rapide, quelle librairie?


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 37
    Par défaut Affichage rapide, quelle librairie?
    Salut,

    Je suis en train de développer un petit shoot'em up (-> http://www.gemine.net/shootemup002.jar ) et je suis confronté à quelques problèmes de performance : je suis à 5 vaisseaux à peine et ça rame sur certaines machines... Pourtant je compte bien rajouter de nombreux objets dans l'écran de jeux, il faut donc absolument que je puisse gérer beaucoup plus vite chaque mise à jour du JPanel dans lequel je dessine.
    En essayant d'optimiser une première fois, j'ai modifié légèrement mon code pour qu'aucune image ne soit chargée au moment de l'affichage (en effet j'avais fait une ou deux bétises et certaines images étaient chargée depuis le disque dur au moment de l'affichage !) mais ce n'est toujours pas suffisant.

    Je me tourne donc vers vous pour que vous me conseillez une autre solution. Actuellement j'utilise awt/swing, pensez vous que si je me tournais vers LWJGL ou JOGL, je pourrais gagner beaucoup en performance et j'aurais une application fluide avec un grand nombre d'objet à afficher à l'écran?

    Si vous pensez que mon problème vient plutôt de ma façon de coder, je peux mettre les fichiers sources en ligne.

    Merci d'avance

  2. #2
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 819
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 819
    Par défaut
    Salut,

    Citation Envoyé par Quintoff
    ça rame sur certaines machines...
    Est-ce qu'il y a quelques points communs entre les machines qui rament? Processeur? Mémoire? Système? Version de JRE?
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  3. #3
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Utilises tu des images compatibles?

    http://www.jroller.com/page/gfx/?anc...p_effects_part

    Car celles ci augmente la vitesse de traitement en s'assurant qu'elles sont boien compatibles avec la carte graphique

    De même tu pourrait essayer de ne repeindre que certaines parties de ton JPanel et utilisant le clip des formes affichées

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 37
    Par défaut
    >Est-ce qu'il y a quelques points communs entre les machines qui rament? Processeur? Mémoire? Système? Version de JRE?

    La machine avec laquelle je développer est un AMD Athlon 2400+ avec 512 Mo de ram et tourne sous Ubuntun 6.10, je l'ai testé avec sous un MacBook Pro et ça tourne beaucoup mieux mais pas de là à mettre 10 tirs joueurs + 30 tirs ennemis + 5 rochers + 10 vaisseaux ...
    Sinon sous windows j'ai pas vraiment ajouter des objets pour tester mais ça à l'ai de tourner +- comme mon AMD et même peut être un peu plus fluide.
    Pour info sous Ubuntu j'ai des problème avec certain mode de couleur (24 bits notamment) et j'ai quelques doutes sur l'utilisation de la carte graphique.

    >Utilises tu des images compatibles?

    Je connaissais, je cours mettre ça en place
    EDIT : Je connaissais PAS

    >De même tu pourrait essayer de ne repeindre que certaines parties de ton JPanel et utilisant le clip des formes affichées

    Ca ce n'est pas vraiment possible car je dois rafraîchir toute la zone de jeux (fond défilant + grande superficie occupée par les tirs et vaisseaux).

    Sinon quand je parcours la liste des vaisseaux et des tirs à afficher, j'utilise des Iterator qui parcourent des ArrayList, vous pensez qu'il y a un méthode plus efficace (de simples tableaux ne suffisent pas, les listes sont appellées à changer de taille régulièrement).

    Merci d'avance

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    pour les ArrayList mieux vaut passer par une boucle for qu'un iteratot (ceci est vrai pour toute classe implémentant RandomAccess)

  6. #6
    Membre expérimenté Avatar de hydraland
    Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Par défaut
    Salut,

    Si tu en as la possibilité, je te conseignerai de passer ton jeux en mode plein écran(http://java.sun.com/docs/books/tutor...een/index.html). Je suis aussi en train de faire un jeux qui possède différent mode d'affichage et le plus rapide(de loin) c'est quand je suis en mode plein écran.

    Bonne année à tous,
    Hydraland

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. regex quelle librairie est la plus rapide
    Par ouiouioui dans le forum Débuter
    Réponses: 11
    Dernier message: 28/01/2009, 15h23
  2. affichage rapide d'un tableau
    Par exter666 dans le forum MFC
    Réponses: 16
    Dernier message: 15/04/2005, 03h02
  3. Quelle librairie (portable) utiliser pour le son ?
    Par Nico*3-3 dans le forum Bibliothèques
    Réponses: 20
    Dernier message: 19/03/2005, 00h01
  4. [Acquisition Video]Quelle Librairie ??
    Par Belzano dans le forum Choisir un environnement de développement
    Réponses: 3
    Dernier message: 10/08/2004, 17h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo