IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau et multijoueurs Discussion :

collision inter-joueurs jeu reseau


Sujet :

Réseau et multijoueurs

  1. #1
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut collision inter-joueurs jeu reseau
    Bonjour a tous,

    dans le cadre d'un projet, je dois réaliser un jeu un peux genre mario cart en arrène.
    Un serveur au quel ce connecte une dizaine de clients.
    Ceux ci pourrons se déplacer sur une map en 3d a bord d'une sorte de véhicule.
    la collision joueur/carte est géré coté client pour chaque joueur.
    A chaque intervalle donné, le client envois ses coordonnées au serveur qui redistribue a tout les autres joueurs.

    la ou sa commence a poser problème : la collision inter-joueur et le déplacements des objets qui pourraient eventuellement etre projeté suite a la collision avec le vehicule du joueur ( une bariere pour exemple ).

    ou cela est il géré ?
    comment procéder ?

    mon approche premiere est elle correcte ?


    Le projet sera codé en C++ Qt 4.4 Irrlicht ou ODE ( pas encore décidé )
    Pour le reseau je pensais coder un serveur perso en Qt


    Par avance merci.

    Dup.

  2. #2
    Membre averti Avatar de Rafy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    415
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 415
    Points : 417
    Points
    417
    Par défaut
    Salut,
    Il y a des choses très importantes auxquelles il faut penser et garder à l'esprit quand on code en réseau. En particuliers LA règle qui ne doit en aucun cas être contrariée : "Never trust the client".
    Tu parlais que chacun de tes client effectuait le calcul de collision avec les autres joueurs. Il ne faut surtout pas faire ça !!! C'est le serveur qui doit faire tous les calculs et il envoie les positions vitesses éventuellement à tous les clients qui ne font "que" d'afficher.
    Si c'était le client qui faisait les calculs, tout le monde pourrait tricher !! Moi je recode un client et il dit au serveur que je vais 2 fois plus vite que tout le monde et à chaque fois je gagne
    "Never trust the client"

  3. #3
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut
    ok, déjà un grand merci pour cette réponse car sa a résolue pas mal de problèmes.

    J'aimerais aussi savoir comment sa se passe du coté des informations a faire passer.

    Étant donné que c'est le serveur qui s'occupe de toute la partie physique, toutes les infos de déplacement sont a faire passer par le réseau.
    Je suppose que l'on ne renvois que les informations sur les objets qui sont en mouvement question de ne pas encombré le réseau inutilement.
    Ce qui me chiffonne un peux quand même c'est par exemple un joueur vas rentrer dans une barrière, celle ci doit bouger en conséquence mais es ce que c'est le serveur qui doit gérer sa aussi ? parce que sa va commencer a faire beaucoup de choses qui passent par le reseau !!

    De même pour diriger les joueurs, c'est le serveur qui doit autoriser le deplacement ?


    je m'arrete parce que des questions du genre j'en ai encore des tas et que je ne trouve pas beaucoup d'infos la dessus sur le net ...


    Merci de votre aide !


    Dup

  4. #4
    Membre averti Avatar de Rafy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    415
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 415
    Points : 417
    Points
    417
    Par défaut
    Salut,
    Malheureusement je ne vais pas pouvoir répondre à toutes tes questions, car je ne connais pas toutes les réponses. En effet, je développe en ce moment donc je ne peux parler que de choses que je suis en train de faire, sans recul.
    Mais je peux tout de même te dire certaines choses. Je vais les étayer par un lien qui m'a permi de comprendre pas mal de choses (mais il est en anglais) et un second, en français, qui va moins dans certains détails, mais qui est je pense complémentaires.
    Le serveur effectue tous les calculs de physique à l'exception de ceux qui relève des effets graphiques. Par exemple, quand tu tirs dans un murs, des étincelles giclent, ce n'est pas le serveur qui va calculer leur trajectoires, c'est le client qui va s'en occuper. Elles n'ont pas d'impact dans le jeu. Le feu, s'il n'est pas précalculé, c'est le client qui va le calculer. Toutes cas choses qui ne sont que du "plus" du type effets, c'est le client qui s'en charge. Tout le reste, c'est le serveur. Tous les objets qui doivent être placés au même endroit sur tous les clients doivent être calculé par le serveur. Donc ta barrière doit être calculée par le serveur et sa position etc doit être envoyée aux clients.
    Pour ce qui est de la taille des paquets, je n'y ai pas encore réfléchi. (pour le moment dans mon cas j'essaye de faire un truc qui fonctionne avant de faire un truc performant).
    Voila, bonne lecture avec les deux liens :p
    Lien en anglais : http://developer.valvesoftware.com/w...yer_Networking
    Lien en Français : http://www.e-t172.net/articles/srcnetcode/

Discussions similaires

  1. Jeu du pendu deux joueurs mode reseau
    Par jessikap dans le forum Débuter
    Réponses: 0
    Dernier message: 12/10/2014, 20h42
  2. Synchroniser position joueur en reseau
    Par Exec57 dans le forum C#
    Réponses: 2
    Dernier message: 11/06/2014, 11h09
  3. Pong joueur jeu
    Par hostyle dans le forum Interfaces Graphiques en Java
    Réponses: 8
    Dernier message: 20/03/2012, 15h29
  4. Collisions entre ennemis jeu 2D
    Par mach1 dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 12/09/2010, 19h16
  5. Collision dans un jeu de voiture
    Par japle dans le forum Physique
    Réponses: 5
    Dernier message: 21/07/2006, 14h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo