MultiJoueur égal multiProcessus ?

Résolu
predact Messages postés 187 Statut Membre -  
predact Messages postés 187 Statut Membre -
Bonjour à tous,
J'aimerai me lancer dans le développement de petit jeux multijoueurs mais pour cela il faut déjà en comprendre le principe. Je suppose que c'est du multi processus et plus précisément du multi threading mais j'en suis pas sur alors pouvez un peu m'éclairer sur les principes de bases?

De plus pour les connections à un éventuelle serveur et tout ça, que faut-il utiliser? La encore je suppose que se sont des systèmes comme des sémaphores et tout ça, est-ce que je me trompe ?

Merci d'avance pour votre aide!



2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
"multi processus et plus précisément du multi threading"
Attention aux confusions, ce sont deux choses différentes !
Mais sinon le principe c'est ça, il faut bien sûr voir au cas par cas les protocoles à utiliser pour chaque jeu...
1
predact Messages postés 187 Statut Membre 16
 
Ok, les threads ne sont pas des sortes de processus ?
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Sur l'idée de base, effectivement un thread et un processus se ressemblent pas mal (plus qu'un chien et une théière) mais c'est sur la notion de "multi" que ça change...

Multi-thread c'est nécessairement dans le même processus, et donc sur la même machine, ce qui permet de faire directement le partage de la mémoire de la machine sans trop de difficulté.

Multi-processeur au contraire ça peut-être sur deux machines différentes (client/serveur), et du coup la gestion de la mémoire partagée est plus compliquée et nécessite de faire la passerelle entre les deux.
0
predact Messages postés 187 Statut Membre 16
 
Ok mais du coup, une application multijoueur c'est plus du multi-processeur pour pouvoir faire du client serveur ? C'est donc impossible à gérer grâce à des threads si je comprends bien ?
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Ça dépend de ton application...

Si tu dois dupliquer ton application pour faire tourner plusieurs parties en même temps ce sera multi-processeur, mais si tout le monde joue sur une partie unique ce n'est pas forcément utile.
Et côté client, même la petite application mono-joueur peut être multi-threadé selon ce que l'on a besoin de faire...

En plus de cela vient se rajouter la contrainte du (ou des) langages pour chaque morceaux de l'application...
0
predact Messages postés 187 Statut Membre 16
 
Ahhh ok je comprends! nickel merci beaucoup pour tes explications, elles sont très claires!
0