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

Développement 2D, 3D et Jeux Discussion :

MVC et jeu vidéo


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Inactif  
    Homme Profil pro
    feignant
    Inscrit en
    Mars 2015
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : feignant

    Informations forums :
    Inscription : Mars 2015
    Messages : 300
    Points : 0
    Points
    0
    Par défaut MVC et jeu vidéo
    Bonjour,

    Je voudrais savoir si le pattern modèle-vue-contrôleur a sa pertinence pour la programmation d'un jeu vidéo,

    Mettons que je fasse un pong, on rangerait dans le modèle des classes balle-raquette-scores, dans la vue le moteur graphique et audio, et le contrôleur synchronise tout ça avec le gameplay (et les input clavier je sais pas si il faut les mettre dans le contrôleur ou dans la vue)

    bon en fait mes jeux sont déjà structurés comme ça sauf que je range pas le bazar dans trois dossiers

    grosso modo c'est ça ? dites si je me plante

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut
    Citation Envoyé par stopviolence Voir le message
    Je voudrais savoir si le pattern modèle-vue-contrôleur a sa pertinence pour la programmation d'un jeu vidéo
    Complètement car un jeu vidéo c'est un logiciel comme un autre. Comme autre patron/motif un classique c'est le singleton.

    Citation Envoyé par stopviolence Voir le message
    Mettons que je fasse un pong, on rangerait dans le modèle des classes balle-raquette-scores, dans la vue le moteur graphique et audio, et le contrôleur synchronise tout ça avec le gameplay (et les input clavier je sais pas si il faut les mettre dans le contrôleur ou dans la vue)
    La vue c'est l'IHM mais si ma mémoire est bonne c'est plus logique d'utiliser le contrôleur pour les entrées. En plus on parle de contrôles aussi à la manette, souris…

    Citation Envoyé par stopviolence Voir le message
    bon en fait mes jeux sont déjà structurés comme ça sauf que je range pas le bazar dans trois dossiers
    On est libre de ce côté là tant que ça reste bien organisé. Pour un petit projet ma préférence va à des fichiers à la racine. Quand ça se complexifie là on hiérarchise. Après ça reste une bonne pratique de toujours respecter telle ou telle méthode…

  3. #3
    Membre éclairé

    Homme Profil pro
    Non disponible
    Inscrit en
    Décembre 2012
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : Décembre 2012
    Messages : 478
    Points : 877
    Points
    877
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ohnomorejmmings Voir le message
    Comme autre patron/motif un classique c'est le singleton.
    A utiliser avec beaucoup de parcimonie, il donne souvent du code peut modulaire, ne doit être utilisé que pour les entités qui ne seront jamais dupliquées.

    Citation Envoyé par ohnomorejmmings Voir le message
    La vue c'est l'IHM mais si ma mémoire est bonne c'est plus logique d'utiliser le contrôleur pour les entrées. En plus on parle de contrôles aussi à la manette, souris…
    J'aurais plutôt pensé que les contrôleurs avaient pour rôle la réception des valeur envoyées par la vue dont on pourrai vouloir s'abstraire;
    A la place des flèches directionnelles, on pourrait vouloir une IA, cela impliquerais sans doute duplication de code et "refactorisation".

    Citation Envoyé par ohnomorejmmings Voir le message
    Après ça reste une bonne pratique de toujours respecter telle ou telle méthode…
    D'ailleurs si je peux aussi conseiller le pattern SOLID et RAII (merci à ceux qui les ont scandés sur ces forums )

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut
    Au temps pour moi la vue se charge bien de gérer les évènements. Par contre ça reste possible d'en séparer l'affichage. Quant à une IA tout dépend de ce qu'elle fait. Je pense par exemple au contrôle d'une vue en mode démo même si c'est pas l'usage auquel on pense en premier.

  5. #5
    Inactif  
    Homme Profil pro
    feignant
    Inscrit en
    Mars 2015
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : feignant

    Informations forums :
    Inscription : Mars 2015
    Messages : 300
    Points : 0
    Points
    0
    Par défaut
    Intuitivement j'aurais aussi rangé les contrôles dans la vue parce que ça me semble plus cohérent de mettre au même endroit ce qui gère les périphériques enfin je dis ça mais ptête qu'on se plante.

    Sinon le singleton je sais pas c'est un truc que j'utilise presque jamais, si je veux une classe qui fait pas des bébés je fais juste une classe statique. Le singleton je dois m'en servir quand j'ai besoin d'une classe mère et profiter de ses props d'instance. Bon donc j'ai pas dù bien comprendre le principe.

  6. #6
    Membre éclairé

    Homme Profil pro
    Non disponible
    Inscrit en
    Décembre 2012
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : Décembre 2012
    Messages : 478
    Points : 877
    Points
    877
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par stopviolence Voir le message
    Sinon le singleton je sais pas c'est un truc que j'utilise presque jamais, si je veux une classe qui fait pas des bébés je fais juste une classe statique. Le singleton je dois m'en servir quand j'ai besoin d'une classe mère et profiter de ses props d'instance. Bon donc j'ai pas dù bien comprendre le principe.
    La différence avec un static, c'est qu'avec un singleton tu peux contrôler la durée de vie de ton instance.
    (Quand je disais : "ne doit être utilisé que pour les entités qui ne seront jamais dupliquées", c'est d'un point de vue pratique et non technique.)

Discussions similaires

  1. Ecrire du texte sur une fenêtre de Jeu vidéo (OSD)
    Par zenway dans le forum DirectX
    Réponses: 7
    Dernier message: 07/03/2009, 14h06
  2. développement d'un jeu vidéo...
    Par youp_db dans le forum Développement 2D, 3D et Jeux
    Réponses: 3
    Dernier message: 30/10/2005, 17h09
  3. Help ! Programmer un jeu vidéo
    Par Jay Bee dans le forum DirectX
    Réponses: 7
    Dernier message: 18/03/2004, 18h38
  4. Help ! Programmer un jeu vidéo...
    Par Jay Bee dans le forum OpenGL
    Réponses: 3
    Dernier message: 05/03/2004, 15h34
  5. Une déclaration pour la survie du jeu vidéo en France
    Par Freakazoid dans le forum DirectX
    Réponses: 1
    Dernier message: 30/10/2002, 14h31

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