begin process at 2012 05 27 14:32:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

OpenGL

 > CLASSE DE QUADTREE ( POUR UN AFFICHAGE SUPER RAPIDE) OPTIMISÉ POUR OPENGL

CLASSE DE QUADTREE ( POUR UN AFFICHAGE SUPER RAPIDE) OPTIMISÉ POUR OPENGL


 Information sur la source

Note :
Aucune note
Catégorie :OpenGL Niveau :Expert Date de création :04/05/2005 Vu / téléchargé :9 353 / 947

Auteur : Arnaud16022

Ecrire un message privé
Site perso
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

qu'est-ce qu'un quadTree?
comme un octree mais en mieux pour les maps a peu pres plates.
En fait, meme si il y a de hautes montagnes ca marche bien, mais c'est a éviter si vous etres dans un donjon ou une tour
Pour une plaine ou toute map d'extérieur c'est parfait et augmente le fps de 80
En gros c'est un arbre binaire qui utilise a fond la récursivité; voyez le code pour plus de détails
affichage du fps dans la fenetre de debug

Ce quadTree a un truc de tres particulier, génial si vous voulez utiliser une autre lib pour laffichage ou les collisions: vous passez tous vos triangles a la dll au début, elle fait ses calculs, et libere toute la memoire utilisée par les triangles
ensuite, elle vous envoie a chaque frame une liste des triangles a afficher
ca évite que toute la mp soit stockée 3 fois en memoire (pour le quadtree, pour opengl, pour l'éventuelle lib de collision comme coldet.dll)

TRES IMPORTANT:
par défaut, le quadtree est désactivé. pour l'utiliser, appuyer sur 'Q' lors de l'affichage


 Conclusion

prefs:
sur athlon 1,4Ghz, ATI 9200SE 128mo, 256MoDDR : 15 sec de chargement, 200fps sans optimisation, 280 en utiisant le quadtree
sur P4 3.2Ghz, carte inconnue (Geforce 4 je crois), 512 MoDDR: 3 sec de chargement, un gain approximatif de 100fps grace au quadtree (je n'ai plus les chiffres exacts, c'est pas mon PC)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip OCCLUSION QUERY
Source avec Zip Source avec une capture FENÊTRE DE DEBUG GTK+ POUR OPENGL
Source avec Zip FÊTES SUR LE BUREAU
Source avec Zip Source avec une capture EFFET 3D SUR TEXTE OPENGL
Source avec Zip Source avec une capture DU TEXTE SUR UNE TEXTURE OPENGL

 Sources de la même categorie

Source avec Zip Source avec une capture AFFICHER DES COURBES DE BEZIER par shorzy
Source avec Zip Source avec une capture BASE/MOTEUR 3D EN QT/OPENGL (COMPLET ET FONCTIONNEL!) POUR U... par envi33
Source avec Zip Source avec une capture CLASSE AVEC OPENGL - OBJETS 3D ET ANIMATIONS par rasta63
Source avec Zip Source avec une capture LETTRES 3D AVEC OPENGL ET QT par opossum_farceur
Source avec Zip CUBE 3D GLUT32 VC++ ET DEVC++ par bobby03

Commentaires et avis

Commentaire de Funto66 le 04/05/2005 20:31:10

Chez moi la différence de perfs est plus flagrante ;)
(Au fait, apparemment le quadtree est activé par défaut, contrairement à ce que tu dis : bool QT_actif=true;)

Chez moi quand le prog est fini il reste la fenêtre de debug et les FPS s'emballent du coup (y'a plus rien à afficher la fenêtre est fermée : 45000 FPS :D:D )

Je vais décortiquer ta classe je pense ;)

Par contre c'est dommage que tu ne programmes pas portable, tu m'obliges à chaque fois à rebooter sous Win...

Commentaire de Arnaud16022 le 04/05/2005 21:20:00

MDR pôv 'tit' Funto qui doit booter sous windaube lol
boaf tu sais moi en ce moment je suis plus sous DOS que sous quoi que ce soit d'autre alors te plains pas trop MDR (ben vi, pb de DD)
ca serait cool que tu me files tes perfs (chargement, fps avec et sans optimisation, tps de lecture) ton hardware, histoire de pas mourrir idiot.
saches que j'aurais volontiers mis a profit ta heightmap mais un truc me chiffonne la dedans (c'est pour ca que je retourne uniquement une liste de triangles, pas les vertices), c'est que c'est TA classe qui fait l'affichage, autrememnt dit si on veut faire du multitexturing (vive arb)  ou de la transparence on l'a dans l'os pour ne pas etre plus vulgaire :)
d'où cette méthode
ca me fait penser a un truc, faudra mettre a profit good'old MSN

Commentaire de Funto66 le 05/05/2005 00:57:51

Chuis d'accord, avec ta méthode je viens de me rendre compte que j'aurais mieux fait de ne pas gérer l'affichage directement dans la classe...
Par contre je sais pas si j'aurai vraiment le temps de m'en occuper ces temps-ci, bac oblige pour moi aussi :(

Normalement demain j'essaie de pas trop me mettre sur le PC...

Pour les mesures des FPS/hardware, heu ben je te dirai ça quand j'aurai rebooté sous Win ;)
En tous cas déjà mon hardware, c'est ATI Radeon 9800 Pro et PIII 3.2 GHz ;)

Commentaire de Zazour le 05/05/2005 20:17:01

tu peux expliquer le format .obj STP?

Commentaire de Funto66 le 06/05/2005 18:50:56

Il me semble que le loader de fichiers OBJ n'est pas d'Arnaud, et que c'est écrit en haut du fichier glm.cpp...
Si tu veux des explications sur le format, je ne saurais que trop te conseiller Wotsit.org, ou http://nehe.gamedev.net qui propose plusieurs formats de fichiers 3D...

Commentaire de Arnaud16022 le 06/05/2005 19:40:09

le format .obj est tres simple mais n'a pas grand chose a voir avec le prg, c'est juste pour enregistrer mes données sur le disque, j'aurais pu utiliser autre chose...
en gros pour un somment t'as
v 1.0 2.0 3.0
pour des coodrs de texture t'as
vt 0.0 0.0
pour une face t'as un truc genre
sommet1 / sommet2 / sommet3 (ou autre)
etc
mais encore une fois ca a pas gd chose a voir avec le prog

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,030 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales