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 :

Jeux online - choix de concéption ?


Sujet :

Réseau et multijoueurs

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Jeux online - choix de concéption ?
    Bonjour,

    Voila je compte développer avec une petite équipe un jeux online
    La question étant de savoir quelle sont les meilleures technos/techniques à utiliser pour concevoir le moteur réseau ?

    En effet, vaut il mieux tout concevoir from scratch en C ou utiliser une lib style ACE ou boost.asio en C++ ?

    Et par curiosité tout les jeux vidéo récents utilisent quoi comme technos actuellement ?

    Merci d'avance

  2. #2
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    tech lead c++ linux
    Inscrit en
    Août 2004
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : tech lead c++ linux

    Informations forums :
    Inscription : Août 2004
    Messages : 4 262
    Points : 6 680
    Points
    6 680
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par skydevil Voir le message
    Bonjour,

    Voila je compte développer avec une petite équipe un jeux online
    La question étant de savoir quelle sont les meilleures technos/techniques à utiliser pour concevoir le moteur réseau ?
    Cela dépend de beaucoup de choses, et surtout de ce que vous souhaitez faire. Tu parles de "jeu en réseau", mais il y a un monde entre un jeu en ligne en php/javascript avec un jeu de Blizzard; pourtant les deux sont des jeux en réseau.

    Citation Envoyé par skydevil Voir le message
    En effet, vaut il mieux tout concevoir from scratch en C ou utiliser une lib style ACE ou boost.asio en C++ ?
    Encore une fois, ça dépend de ce que vous voulez faire, et des moyens que vous vous donnez. Mais bon, partir de zéro me parait compliqué. Seuls les bons hackeurs (dans le sens anglo-saxon, c'est à dire plus programmeur que pirate) font du "from scrash", et c'est soit pour le défi, soit pour le plaisir (c'est à dire que ce n'est plus le résultat qui importe).

    Citation Envoyé par skydevil Voir le message
    Et par curiosité tout les jeux vidéo récents utilisent quoi comme technos actuellement ?
    Ils utilisent tous types de technos...
    Ils utilisent toujours des libs de gestion du multimédia (audio et video) comme DirectX, RenderWare, SDL, Ogre..., et toutes sortes de libs (moteurs physiques, réseau, gestion des périphériques, ...) qui sont aussi nombreuses que variées et dont l'usage dépend de ce que tu souhaites faire.
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Enfait ca serait un jeux de combat devellope en C++ avec un moteur 3D en opengl/sdl le jeux devrait pouvoir tourner sur linux/win

    le jeux se rapprocherait d'un wow sans tout le cote mmo

    Le probleme de choix technique concerne uniquement le reseau ... On pensait utiliser une lib reseau (ACE ou boost.asio) et rester en C++ mais certain sont des fervent defenseur du C et des standards posix "oui mais c'est plus opti ! "

    Du coup c'est un peu flou

  4. #4
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 359
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 359
    Points : 20 374
    Points
    20 374
    Par défaut
    Citation Envoyé par skydevil Voir le message
    En effet, vaut il mieux tout concevoir from scratch en C ou utiliser une lib style ACE ou boost.asio en C++ ?
    pour mon projet je fais tout par moi même en utilisant Winsock.
    Je n'aime pas du tout les bibliothèques tierces sauf Direct3d qui est incontournable pour moi
    Pour mon jeu RTS qui sera multijoueur en LAN ( pour le moment) il y a à peine un fichier .cpp avec des tout bêtes recv et send de Winsock cela doit faire 200lignes de code à tout casser...
    si tu ne veux pas te casser la tête alors oui prends boost.asio parce que sinon en win32 notamment comme recv et send des Sockets sont des fonctions bloquantes tu est contraint de faire de la programmation multithreading avec des Events..
    sans compter l'utilisation éventuelles des sections critiques


    Citation Envoyé par skydevil Voir le message
    On pensait utiliser une lib reseau (ACE ou boost.asio) et rester en C++ mais certain sont des fervent defenseur du C et des standards posix "oui mais c'est plus opti ! "

    Du coup c'est un peu flou
    Si tu te sens à l'aise avec ACE prends cette lib alors !
    Dans la vie il ne faut pas se compliquer les choses...
    si ACE fournit des fonctions et des bons exemples de gestion de données via le réseau alors prends cette lib...
    le but c'est d'être efficace pour un projet pas d'avoir des considérations philosophiques

  5. #5
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    tech lead c++ linux
    Inscrit en
    Août 2004
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : tech lead c++ linux

    Informations forums :
    Inscription : Août 2004
    Messages : 4 262
    Points : 6 680
    Points
    6 680
    Billets dans le blog
    2
    Par défaut
    Sinon, si vous utilisez la SDL, vous pouvez utiliser la SDL_net qui rempli son objectif.
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

  6. #6
    Modérateur
    Avatar de nouknouk
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    1 655
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 655
    Points : 2 161
    Points
    2 161
    Par défaut
    Citation Envoyé par skydevil Voir le message
    Le probleme de choix technique concerne uniquement le reseau ... On pensait utiliser une lib reseau (ACE ou boost.asio) et rester en C++ mais certain sont des fervent defenseur du C et des standards posix "oui mais c'est plus opti ! "
    Pour cet aspect là, j'aurais tendance à dire que:

    - si votre but premier est d'apprendre des choses, tout refaire from scratch (l'autre nom de "réinventer la roue") est intéressant car c'est le milleur moyen de comprendre comment ça marche du début à la fin.

    - si votre but est d'avoir quelque chose qui marche sans perdre inutilement des centaines d'heures pour refaire la même chose, il est bien plus prudent d'utiliser une librairie toute faite.

    - quant à l'argument du "c'est plus optimisé si on le fait nous même", il s'avère que dans 99% des cas, c'est exactement le contraire qui se passe en réalité. A moins d'être un expert dans le domaine (et dans ce cas, la question ne serait même pas posée ici), une librairie qui concentre l'expérience de dizaines de développeurs expérimentés, de dizaines de versions et des milliers d'utilisations (qui ont de fait testé la lib dans tous les sens) vaudra 1000 fois mieux qu'une lib faite à la main.
    Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci pour vos reponses je crois effectivement que nous allons nous orienter vers ACE

    niveau doc c'est assez restreint mais y'a deux bouquins qui m'ont l'air simpa

Discussions similaires

  1. Jeux online - choix de conception ?
    Par skydevil dans le forum Réseau
    Réponses: 2
    Dernier message: 07/07/2010, 00h08
  2. Flash Vs Java pour un système de jeux online ?
    Par le Daoud dans le forum Frameworks Web
    Réponses: 2
    Dernier message: 10/07/2008, 14h17
  3. Réponses: 12
    Dernier message: 19/11/2007, 12h00

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