Jeu multijoueurs temps réel

Résolu
platon179 Messages postés 237 Date d'inscription lundi 20 mai 2002 Statut Membre Dernière intervention 22 juillet 2011 - 22 juil. 2011 à 10:05
 Utilisateur anonyme - 22 juil. 2011 à 11:10
Bonjour les gens,

Je suis en train de développer un (petit) jeu multijoueurs en temps réel.
Aucun problème pour le serveur, j'arrive plus ou moins à m'en sortir.

Là où je bloque, c'est au niveau des clients.
La communication se fait en TCP.

Quelle est la meilleure méthode pour que les clients ne freezent pas pendant les communications réseau ?

- Un Thread qui entre dans une boucle infinie et attend les données du serveur (par ex. les nouvelles positions des autres joueurs) et mets à jour les infos. Dans ce cas, comment ça va se passer si c'est le client qui doit faire une requête au serveur et attendre sa réponse ?
- Utiliser des sockets non bloquants dans la boucle principale du client
- Autre méthode ?

Merci
A+

1 réponse

Utilisateur anonyme
22 juil. 2011 à 11:10
Bonjour

Je te préviens, tu trouveras peu de gens calés ici sur la programmation de jeux vidéo en Java, je te conseille de poser ce genre de question sur java-gaming.org qui est fréquenté par des gens assez pointus dans ce domaine dont le créateur de MineCraft.

Utilise peut-être plusieurs sockets pour faire communiquer le client et le serveur dans un sens et dans l'autre. Pense aussi à bien gérer les paramètres de sécurité afin que les jeux puissent avoir les droits nécessaires pour utiliser des sockets. Tu peux mettre les messages reçus par le client dans une file et les traiter au fur et à mesure.

Il existe plein d'autres solutions possibles basées sur les sockets dont RMI, Apache Mina, JGN, Kryonet API, Project Reddwarf...












T.U.E.R yeah! vive java
3
Rejoignez-nous