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

Qt Discussion :

Qt et la rapidité?


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par défaut Qt et la rapidité?
    Bonjour,

    J'ai un projet à réaliser sujet "simulateur d'algorithme de colonies de fourmis" la grosse partie de ce projet est l'interface (avoir une interface rapide environ 500 fourmis bougeront toutes les 0,2 seconde).

    J'ai réalisé un test avec cet exemple de la doc QT en mettant 200 souris et ça rame vraiment beaucoup!!!
    http://qt.developpez.com/doc/4.2/gra...collidingmice/

    confirmez vous la lenteur de QT pour ce style d'application?

    merci

  2. #2
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 527
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 527
    Par défaut
    Je ne connais pas Qt mais pour ce genre d'application avec des autres "frameworks" comme MFC ou VCL ça ramera autant; ça rame parce que la fenêtre doit traiter nombres de messages avant d'être rafraichie.
    Il faut utiliser des couches logicielles qui utilisent l'accélération matérielles comme SDL,Direct X ou Open GL

  3. #3
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Citation Envoyé par ederf
    J'ai un projet à réaliser sujet "simulateur d'algorithme de colonies de fourmis" la grosse partie de ce projet est l'interface (avoir une interface rapide environ 500 fourmis bougeront toutes les 0,2 seconde).

    J'ai réalisé un test avec cet exemple de la doc QT en mettant 200 souris et ça rame vraiment beaucoup!!!
    http://qt.developpez.com/doc/4.2/gra...collidingmice/

    confirmez vous la lenteur de QT pour ce style d'application?
    C'est un projet que j'aimerai aussi bien faire, c'est une approche très intéressante des systèmes multi-agents et des machines à état.

    Pour ce qui est de la rapidité du code, pour des objets statiques, on pourrait en mettre des centaines de milleirs que l'affichage ne ramerait pas.
    Ce qui rame ici, ce n'est pas l'affichage, mais le déplacement des objets dans la structure de stockage implicite à un GraphicScene. Tous les objets sont stockés dans un arbre binaire, une amélioration par rapport au Canvas de Qt3, mais il n'y a pas d'optimisation pour le déplacement des items sur la scène, ce n'est pas l'objectif principal de Qt4. D'ailleurs, lors de la présentation de GraphicsView par Qt lors des Trolltech DevDays - http://miles.developpez.com/tutoriel...graphics-view/ - le présentateur a explicitement dit que ce genre d'outils n'avait pas pour but d'être utilisé pour un RTS, et les fourmis, ça s'en approche pas mal, donc c'est nromal que ça ne marche pas.

    Pour que ça marche, il faudrait optimiser les déplacements dans l'arbre de la scène.

  4. #4
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 34
    Par défaut
    salut,
    tu peux peut-être etudier l'exemple de Qt sur le threading qui dit "The Mandelbrot example shows how to use a worker thread to perform heavy computation without blocking then main thread's event loop"
    C'est un exemple de dessin fractal qu'on peut zoomer et scroller rapidement.
    A voir...
    Sinon, je suis d'accord avec Mat.M, pour avoir une bonne représentation graphique il faut sûrement utiliser une bibliothèque comme directX ou openGl bien plus proche du materiel. Il y avait allegro dans le temps qui etait parfait pour ce genre de petite animation.

  5. #5
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    DirectX ou OpenGL, ça ne changera rien, il faut derrière un binary search tree qui soit optimisé pour les déplacements. Si on a ça, on fait cet exercice sans aucun problème avec _n'importe quelle bibliothèque_

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Par défaut
    Citation Envoyé par Miles
    DirectX ou OpenGL, ça ne changera rien, il faut derrière un binary search tree qui soit optimisé pour les déplacements. Si on a ça, on fait cet exercice sans aucun problème avec _n'importe quelle bibliothèque_
    y a-t-il besoin d'un arbre de recherche pour une simulation de fourmi ?
    C'est quoi l'algo general pour ca ?

    Ne peut-on pas pas referencer la fourmi et la faire suivre une trajectoire fourni par l'algorithme ?

    sinon je ne choisirais pas un arbre binaire mais un quad tree, ou tu pourrais fixer la resolution. dans chaque carre minimal, tu fais une recherche sequentielle qui devrait etre suffisant en terme d'efficacité...

    a+

Discussions similaires

  1. De la rapidité du code
    Par jfloviou dans le forum Contribuez
    Réponses: 233
    Dernier message: 29/05/2009, 02h17
  2. [rapidité du code] Mise a jour a partir d'un TQuery.
    Par goethe dans le forum Bases de données
    Réponses: 4
    Dernier message: 27/10/2004, 09h01
  3. Rapidité de compilation C# Vs C++
    Par Melchisedec dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 12/08/2003, 13h05
  4. NMHTTP prob de rapidité
    Par Goldocrack dans le forum C++Builder
    Réponses: 7
    Dernier message: 06/08/2003, 00h12
  5. Rapidite enregistrement
    Par mika dans le forum Débuter
    Réponses: 9
    Dernier message: 25/04/2003, 15h15

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