Yop !!
Je remets sur la table cette histoire de fuites mémoires avec les Intel HD. Pas sûr que ce soit corrigeable au niveau de GD, mais j’aimerais quand même avoir des avis.
Voilà ce que j’ai lorsque je lance mon jeu (un point’n click en image fixe, 80 en jpg 800x600 et une centaine en png de taille variable).
Ca me semble quand même un peu beaucoup : les jpg font 120 Mo en décompressé, les png pas beaucoup plus, musiques et divers tapent dans les 50 Mo, soit un total de 500 Mo tout mouillé en mémoire vive. Surtout que GD comme le jeu finissent par planter lorsqu’ils arrivent à 1.3 Go.
Dans le cas de GD, on relance et c’est bon.
Mais dans le cas du jeu, ça fait tâche (même s’il a un système de sauvegarde automatique pour reprendre là où il avait planté).
J’ai suivi les conseils précédents, en rassemblant un maximum de scènes en une seule.
Le poids du jeu est passé de 200 Mo à 100 Mo, ce qui est bien (80 Mo en web).
Mais maintenant, 90% des images sont chargées à chaque scène (puisque la même scène gère majorité des scènes du jeu). Ce qui fait une explosion mémoire dès le début du jeu. Et bien sûr, à chaque changement d’écran, j’ai environ 20 Mo qui s’ajoute, alors que la conso mémoire devrait rester stable (puisque les mêmes objets sont utilisés).
J’ai tenté de mettre les images en “garder en mémoire”. On gagne en réactivité, mais la fuite est toujours là. Elle semble néanmoins se réduire pour les images qui ne sont pas lissées. Pour les images qui gardent leur échelle, ça va. Mais pour les images redimensionnées, l’effet est dégueux, et ne peut donc pas être désactivé pour toutes les ressources visuelles.
Je pense avoir exploré toutes les pistes de mon coté, et je ne vois pas comment résoudre/atténuer ce problème.
Quelqu’un a une idée ?
EDIT 1 :
Je teste le jeu avec une nvidia d’entrée de gamme.
La fuite mémoire n’est plus. C’est cool, on reste en dessous des 300 Mo. Mais j’ai quand même un plantage !
Aucun explosion mémoire ou saturation quelconque. Le jeu fonctionne, je change de scène, et paf, ça coince.
Ca le fait systématiquement au delà du 10ème changement de scène (entre 11 et 13 pour l’instant). Et ce, quelque soit la scène concernée (celle qui gère toutes les autres ou les scènes dédiées).
Etonnant, non ?