GameCorp - Index des forumsGame MakingProgrammationLangages C et C++[Librairie] Collisions Library beta
[Librairie] Collisions Library beta
| Darktib |
Posté le 10 Jan 2009 à 14:10
|
|
![]() Messages : 4017 GCPoints : 347288 |
Il s'agit de de l'adaptation du snippet de Syltech sur les collisions, codée de maniere a etre simple et rapide. Pour l'instant elle n'est pas terminé, il me reste 10 ligne de tests a adapter (pour gérer les tremblements par exemple) + d'autres fonctionnalités comme les retours fonction (callback). J'en suis a 1600 fps sur un Pentium D 830 / 3Go RAM DDR2 / NVidia GeForce 6800 LE 256 Mo / WinXP / DirectX 9.0c Je n'ai pas fourni de projet code::blocks dans le zip, vu qu'il ne vous aurait servit a rien (impossibilité de compiler niveau linkage), vous avez juste a ajouter les 3 fichiers sources au projet, linker avec Irrlicht (précision : la dll fournie a été compilée avec Irrlicht 1.5 avec DirectX et sous gcc) et compiler. Il y a un exe pour ceux qui ne peuvent pas compiler (et je n'ai rien fait pour linux pour la simple raison que linux est pas pratique pour ca) Voici le zip : http://www.megaupload.com/fr/?d=TARZX9SI
Dernière édition le 10 Jan 2009 à 14:49
|
|
| bebou007 |
Posté le 10 Jan 2009 à 15:02
|
|
![]() Messages : 238 GCPoints : 43228 |
salut je viens de tester l'exe fourni avec et je suis a 315fps config amd athlon xp 3200+ 2ghz geforce 7300gs 768mo ram je vais voir un peut les source et faire un teste avec darkgdk |
|
| Gregouar |
Posté le 10 Jan 2009 à 15:11
|
|
![]() Messages : 989 GCPoints : 84732 |
Pas mal, je tourne à 1100-1200 FPS. Juste des petit problème dans les coins où il ne prend en compte qu'une seule ligne.
Holyspirit c'est :
85 Fichiers sources | 18 349 Lignes de codes 503 Fichiers ressources | 240 Mo 101 Dossiers | 2800 téléchargements |
|
| Darktib |
Posté le 10 Jan 2009 à 16:46
|
|
![]() Messages : 4017 GCPoints : 347288 |
En effet les collisions ne sont pas tout a fait finies... Sinon les fps sont plutot bien supérieurs a ceux en dbp (pas étonnant d'ailleurs^^) | |
| bebou007 |
Posté le 10 Jan 2009 à 16:52
|
|
![]() Messages : 238 GCPoints : 43228 |
personnellement en dbpro je suis a 280fps contre 315 irrlicht il y a pas grand chose par contre c'est bizzard que je tourne que a 315 fps | |
| SEB |
Posté le 10 Jan 2009 à 17:15
|
|
![]() Messages : 554 GCPoints : 103313 |
J'ai testé et je ne tourne qu'a 280 de fps mais c'est pas du au moteur de collision c'est juste la borne max de ma carte graphique lool elle ne monte pas au dessus de 320 donc rien de grave ^^ cependant j'ai jeté un oeil au code qui est assez clair et concis cependant j'ai commencé à ajouter quelques petites notes dessus et quelques modifs. Mon conseil pour toi darktib, const Truc& var en parametres ca va tu le fais bien mem si il en manquait quelques uns. Par contre je ne saurais que trop te conseiller de mettre les const apres les methodes qui ne modifient pas la classe 1 le code est beaucoup plus sur, 2 le compilo peut beaucoup plus optimiser. Evite aussi de recalculer les racines quarré :D. Voila je j'ai fait quelque petites modifs mineures et je n'ai pas testé la compilation d'ailleur mais je te les donne quand meme si ca peut aider. http://perso.wanadoo.fr/the.last.dream/db/collisions.rar
NextGine : 3D games engine
Nombre de lignes actuel : 77683 |
|
| Darktib |
Posté le 10 Jan 2009 à 22:50
|
|
![]() Messages : 4017 GCPoints : 347288 |
Merci pour les améliorations ! Pour les références, en général je prefere les pointeurs ou autre, c'est pourca que je les fait pas tout le temps. Sinon oui mettre des méthode const est une excellente idée^^ Une précision que j'ai oublié de dire : certains peuvent se demander pourquoi je n'ai pas utilisé de templates pour la classe vector2d, au lieu de defines : le moteur étant amené a ne calculer que avec des floats ou des ints, il est inutile de laisser la possibilité d'utiliser des char, bool, etc... SEB a écrit :
Ah ? Faudra que je regarde ca de plus pres, il me semblait que je n'en recalculait qu'une qui est nécessaire... |
|
| SEB |
Posté le 11 Jan 2009 à 12:15
|
|
![]() Messages : 554 GCPoints : 103313 |
Moi je préfère les référence :p parceque en fait avec un pointeur, il peut etre null alors qu'une référence non donc je trouve les références plus sure :) Et pour la racine carré en fait c'était dans la methode slope tu faisais deux fois n.squareDist() ; or square dist utilise sqrt donc j'ai créé une variable pour le stoquer c'est tout :)
NextGine : 3D games engine
Nombre de lignes actuel : 77683 |
|
| Syltech |
Posté le 11 Jan 2009 à 21:44
|
|
![]() Messages : 282 GCPoints : 71266 |
Ah! Vraiment sympa Darktib! Joli travail J'ai 690 fps sur un ordinateur portable tournant sur batterie avec intel core 2 duo T8100 2.1Ghz / 3Go RAM DDR2 / NVidia 8400M GS 128Mo / Vista / Directx 10 Bon courage pour la suite! Moi je vais continuer d'avancer mon moteur dans la partie Dark Basic ^^ surtout avec le nouveau problème qu'a rencontré Bebou007 :) Syltech Edit: lol Je me suis posé la question de savoir si le plugin d3d_function pouvait remonté le Fps en Dark Basic... Résultat juste en changeant les line par des d3d_line je monte à 725 Fps Edit2: Avec mon Pc de bureau Phenom 9850 x4 / 2Go Ram DDR2 / Nvidia 9600GT 1Go / vista / directx 10 j'ai 3750 Fps. Et 3800 Fps avec ma version en Dark Basic et les commandes D3D. Donc sur 2 configs différentes on garde à peu prêt les même pourcentages de puissance d'un programme à l'autre.
Dernière édition le 12 Jan 2009 à 01:32
![]() |
|
| Syltech |
Posté le 16 Jan 2009 à 14:59
|
|
![]() Messages : 282 GCPoints : 71266 |
Darktib, pourrais-tu essayer avec 20000 murs par exemple, et me dire combien tu as de Fps? C'est pour vérifier le gain de performance, par rapport au Dark Basic. Enfin si tu as le temps... moi je n'ai pas Irrlicht sur mon pc. Évidement, tu n'a qu'a simulé les 20000 murs avec une boucle For en début de programme, peut importe les positions. Merci d'avance Syltech ![]() |
|
| Darktib |
Posté le 17 Jan 2009 à 13:28
|
|
![]() Messages : 4017 GCPoints : 347288 |
Je fais ca des que possible... | |
| Mod |
Posté le 18 Jan 2009 à 09:58
|
|
![]() Messages : 4954 GCPoints : 2100823 |
Quelques 2200 FPS de par chez moi sur un Athlon 64 3500+/1 Go RAM/Radeon X800XT. "bebou007" a écrit :
De même c'est curieux, d'autant que ta configuration n'est pas si éloignée de la mienne. Je me demande si ta carte graphique ne verrouille pas la vitesse maximale d'affichage. J'avais déjà trouvé curieux que tu obtiennes des FPS relativement bas sur les tests de JadeBasic, j'avais mis ça sur le compte de l'imperfection du compilateur, mais dans ce cas-ci, dur d'émettre la même hypothèse. Il doit y avoir un paramètre limitant quelque part. |
|
| bebou007 |
Posté le 18 Jan 2009 à 12:50
|
|
![]() Messages : 238 GCPoints : 43228 |
salut ben c'est se que je penses mais quoi car j'ai tous essayer dans les paramètre nvidia et rien ne change | |
| Darktib |
Posté le 18 Jan 2009 à 13:42
|
|
![]() Messages : 4017 GCPoints : 347288 |
Peut etre qu'en mettant a jour les pilotes ca pourra etre résolu... Enfin, 350 fps c'est toujours fluide^^ Sinon j'ai avancé, et il y a de gros changement : déja j'ai séparé le tout en plusieurs headers, j'ai crée une classe de murs pouvant etre hérité (meme si a mon avis faudra que je standardise le tout pour avoir de meilleurs perfs et une évolutivité supérieure), et je vais integrer les cercles comme murs. |
|
| bebou007 |
Posté le 18 Jan 2009 à 20:33
|
|
![]() Messages : 238 GCPoints : 43228 |
ben oui c'est fluide mais c'est bizar quand même surtous que je fait tourner crysis bon en faible mais il tourne mes driver sont a jour et quoi que je fasse sa change pas |
|
| Syltech |
Posté le 18 Jan 2009 à 20:56
|
|
![]() Messages : 282 GCPoints : 71266 |
Ouai, c'est bizarre que ça monte pas plus haut que 350fps :/ Et bon courage encore Darktib^^ (On le répète jamais assez Syltech ![]() |
|
GameCorp - Index des forumsGame MakingProgrammationLangages C et C++[Librairie] Collisions Library beta
Répondre





