Bonjour à tous je développe actuellement un jeu en OpenGL et C, tout ceci marchait bien sur différents PC jusqu'à ce que j'effectue plusieurs changements majeurs dans le code. Au fur et à mesure des test sur le PC de développement (P4 2,8GHz Geforce 440 GO) tout semble s'améliorer, j'ai un gain de FPS et le chargement du jeu est plus rapide même si j'ai rajouté des choses (fichier log, chargement de lumières et caméras à partir d'un fichier ASE...). Le problème est le suivant, tout fier de mes nouvelles optimisation, je vais tester le jeu sur un PC ancien sur lequel celà fonctionnait auparavant, et là il me faut 3minutes de chargement (contre 1s sur le PC de développement) et il m'est impossible de jouer car j'ai une image toutes les 3 à 4 secondes, alors que pour le même jeu lors du test précedant ce vieux coucou tournait qd même à 30-40 fps. Les données du problème sont :
- Je ne sais pas à partir de quel changement ça a commencé à ralentir sur certains PC, je serais incapable de revenir pas à pas en arrière, le travail est d'ampleur trop importante.
- Le PC ancien est un HP Celeron 733Mhz avec carte graphique HP et 128 de RAM mais ce n'est pas un cas isolé, sur un Dell P3 1Ghz CG ATI 32MO et 512 de RAM j'ai le même ralentissement.
- Le ralentissement est global, même aux endroits du jeu ou je n'est RIEN changé de significatif. Mes modifications se situent en grande partie au chargement du jeu.
J'ai pensé que le programme consommait trop de mémoire, mais j'ai la même quantité de RAM sur mon PC de développement (512).
Alors je pencherais sur du code qui ne convient pas bien aux anciennes générations de processeurs.
Ma question est donc la suivante : Y'a-til des choses à éviter en langage C qui sont incompatible avec les anciens processeurs ?
Merci d'avance.
[url="http://www.rc-bot.com"][img]http://www.rc-bot.com/bannieres/banniere468x60.jpg[/img][/url]