Coordonnées et déplacement
Posté : 22 sept. 2009, 18:29
Bonjour à tous (je suis tout nouveau ici !)
Je me lance dans la création d'un jeu par navigateur en php, et à peine je démarre que j'ai le problème suivant :
Un joueur se déplace en temps réel sur une carte qui comporte plusieurs "types" de terrains.
Sa vitesse dépend du type de terrain sur lequel il se trouve.
Certains terrains sont infranchissables.
Je voudrais modéliser cela.
Pour l'instant, je n'ai trouvé que 2 solutions :
1) Tester la localisation à intervalles de temps réguliers pour déterminer la vitesse et l'inscrire dans une base de données. Mais ca ne me parait pas résoudre la question du terrain "infranchissable". Car dans ce laps de temps, le joueur peut pénétrer dans un tel terrain, et une fois dedans, il ne pourra plus bouger car il n'aura le choix qu'entre des locations "infranchissable". Sauf si je le renvoie à sa dernière localisation où il n'était pas encore dans une telle zone. Néanmoins, pour gagner en précision, il me faut alors tester régulièrement la position du joueur (toutes les 10s ?) pour éviter d'être bloqué trop loin du terrain infranchissable (si je teste toutes les minutes, et qu'il se trouve à 59s d'un terrain infranchissable, il lui est incapable de se rapprocher de la bordure du terrain carrossable). S'il y a des centaines, voire des milliers de joueurs sur le serveur (je suis ambitieux), est-ce que ce n'est pas trop lourd ?
2) Calculer la trajectoire du personnage et définir à l'avance les moments où il changera de vitesse et les moments où il sera bloqué. Cela revient à calculer toutes les positions qu'il va parcourir et définir à quels moments "t" il va changer de vitesse et quand son parcours sera bloqué par un terrain infranchissable.
Quelle solution vous parait la plus réaliste ? Comment font les "pros" ?
D'avance merci.
Je me lance dans la création d'un jeu par navigateur en php, et à peine je démarre que j'ai le problème suivant :
Un joueur se déplace en temps réel sur une carte qui comporte plusieurs "types" de terrains.
Sa vitesse dépend du type de terrain sur lequel il se trouve.
Certains terrains sont infranchissables.
Je voudrais modéliser cela.
Pour l'instant, je n'ai trouvé que 2 solutions :
1) Tester la localisation à intervalles de temps réguliers pour déterminer la vitesse et l'inscrire dans une base de données. Mais ca ne me parait pas résoudre la question du terrain "infranchissable". Car dans ce laps de temps, le joueur peut pénétrer dans un tel terrain, et une fois dedans, il ne pourra plus bouger car il n'aura le choix qu'entre des locations "infranchissable". Sauf si je le renvoie à sa dernière localisation où il n'était pas encore dans une telle zone. Néanmoins, pour gagner en précision, il me faut alors tester régulièrement la position du joueur (toutes les 10s ?) pour éviter d'être bloqué trop loin du terrain infranchissable (si je teste toutes les minutes, et qu'il se trouve à 59s d'un terrain infranchissable, il lui est incapable de se rapprocher de la bordure du terrain carrossable). S'il y a des centaines, voire des milliers de joueurs sur le serveur (je suis ambitieux), est-ce que ce n'est pas trop lourd ?
2) Calculer la trajectoire du personnage et définir à l'avance les moments où il changera de vitesse et les moments où il sera bloqué. Cela revient à calculer toutes les positions qu'il va parcourir et définir à quels moments "t" il va changer de vitesse et quand son parcours sera bloqué par un terrain infranchissable.
Quelle solution vous parait la plus réaliste ? Comment font les "pros" ?
D'avance merci.