Bonjour.
Pour un jeu, j'ai une map (std::map, en C++) d'objet qui seront dessiné à l'écran, cette map a comme clef une pair de nombre (qui représente la case ou l'objet est dans le niveau) et comme valeur un objet.
J'aimerais savoir comment optimiser au mieux le stockage d'une map en 3D, enfin le problème c'est pas tant le fait d'avoir la map en mémoire (qui est de toute façon très légère) mais plutôt de gérer l'affichage des tout les objets présent dans cette map.
Avec une map normale (comme j'utilise actuellement) les seuls moyens (du moins que je vois) c'est soit d'afficher tout les objets (relativement bof si c'est une grande map avec beaucoup d'objets) soit de parcourir toutes les cases qui sont censé être visible et les dessiner (relativement bof si il n'y a pas beaucoup d'objets à dessiner, voir relativement bof tout court en fait).
La meilleur solution que je vois serait d'utiliser des chunks, un tableau 3D qui contiendrait des maps (les mêmes que celles que j'utilise actuellement) et pour chaque chunks visible ont dessine tout les objets de la map.
J'aimerais votre avis, si vous avez des meilleurs propositions, ou une taille de chunk optimale (par rapport au nombre maximum de case affichable par l'écran). Merci d'avance.