22-10-2009, 08:24 AM
Citation :Tu comptes vraiment faire un fichier par image ? Genre cheveux-blonds-1.png, cheveux-blonds-2.png, moustage-rousse-1.png, etc ? Si oui, c'est du suicide au niveau des requêtes HTTP : Tu n'auras jamais vu un site aussi lent.
Si je prends l'exemple de Battle Arenas ou chaque gladiateur est composé de 3 couches (corps/main gauche/main droite), même chose pour chaque case de terrain, une carte de 50x50 avec plus de 180 gladiateurs se charge en 5-6 secondes avec une 100 aine d'utilisateurs connectés en même temps. Cela demande 430 requêtes pour l'affichage.
Voici une partie du rendu pour exemple
Evidemment, cette carte de 2500 cases n'est pas affichée à chaque fois. Le champ de vision des glads n'est que de 11x11 en situation de combat et la vue générale n'est que rarement utilisée. Mais les performances ne semblent pas écroulées par l'utilisation de couches superposées.
Effectivement, avec le CSS Sprite, on pourrait gagner en perf mais sachant que de nouveaux design sont régulièrement ajoutés, que les existants changent de temps à autres, est-ce que cela en vaut vraiment la peine. Regrouper les dessins de glads et les décors en quelques fichiers limiterait la possibilité d'avoir plusieurs équipes bossant dessus en parallèle.
CSS Sprite ou couches superposées, tout dépend de l'utilisation qui en sera faite.
Dans BA, on peut même créer son propre blason pour son équipe. Il apparait dans le détail de la fiche Equipe et sur le Forum. Cette partie est générée en GD et mise en cache (fichier physique) pour une meilleure optimisation des ressources.
Il suffit donc de choisir une méthode adaptée à chaque cas.
Quand on te dit qu'un projet est terminé à 90%, prépare toi pour les 90% suivant
Ninety-Ninety Rule
"Une guerre de religions, c'est quand deux peuples s'entretuent pour savoir qui a le meilleur ami imaginaire"
Vu sur IRC
Ninety-Ninety Rule
"Une guerre de religions, c'est quand deux peuples s'entretuent pour savoir qui a le meilleur ami imaginaire"
Vu sur IRC