télécharger 27.93 Kb.
|
![]() ![]() ![]() ![]() ![]() CR (compte rendu) réunion du 2011-02-02 :Ordre du jour : - Daily - Composantes - Post-mortem - Objectifs It2 - Estimés - Répartition des tâches - Planification prochaine réunion - Composantes : On garde Entity pour l’instant, et on verra si le besoin se fait sentir de rajouter plus de spécificité. Gameplay ? Composante personnage / classe Personnage / classe personnage dérivant de Entity ? Plutôt composante Personnage + une Vivant et une autre NonVivant. Terrain : solution alternative : Ogitor. TP Patrice :
Post Mortem Itération 1 :
Objectifs Itération 2 :Afficher un modèle dans une petite scène Faire bouger localement le modèle (physique + I/O) Implémenter la partie réseau It3 : Personnage contrôlable (gameplay + components) BSP It4 : IA de base Construire map Animation It5 : Version pré-alpha 1 classe, 1 pouvoir, 1 arme Map vide IA de base - Tâche : Livrable Patrice Boucle d’affichage -> GameEngine Architecture + Entity Ogre3D Traitement des I/O Physique + lien avec Havok Réseau - Fil rouge : BSP Assets Doc outils (Havok, …) - Patricek: ElapsedTime fixe pour déterminisme? I/OManager NetworkM Format local Data NetStruct - Prochaine réunion : Lundi 7 Février 13H00. - TP0 Patrice - Check UML - Diagramme de séquence - Documentation - Daily Décisions : - On continue d’utilise le wiki - On garde le modèle Entity. Si le besoin s’en fait sentir on adapte selon les recommandations de Patrick B. - Création du backlog et répartition des tâches selon les objectifs CR (compte rendu) réunion du 2011-02-07 :Ordre du jour : - Daily - Maj UML + remarques - Diag séquence TP0 - Rapport TP0 comm - Docu outils - Architecture : - CManager+CFact+Entity : _MatWorld : Matrix4 ou Node*? A voir lorsque le Graphic Engine sera plus avancé. _Au final 2 solutions possibles pour création destruction des components :
On garde la deuxième. _Rajouter isA(ID) dans les components. Déplacer l’enum dans la classe Component en public. _Pool : à parler plus tard… - GraphicEngine vs GameEngine : GameEngine : coordinateur. Il fait le transfert entre les modules (pour la fenêtre et le root par exemple, il peut demander à un module de lui donner pour le passer à un autre). - I/O : Ajouter fonctions par rapport au CEGUI. Envoyer keyPressed au network. Input hardware et software envoie cette structure au network : Struct { ___ type; Struct content { } }; Protocole intermédiaire + protocole réseau. Traducteur + manager GameMode si CEGUI pour savoir si envoi réseau. - Réseau : message directement transmis de client->serveur aux autres clients avec le numéro de la frame à laquelle exécuter la commande. Question Patrice Serveur décide si quelqu’un est désynchronisé. Client annonce qu’il y a désynchronisation. - Prochaine réunion : Mardi 8 Février 13H45. - Diag séquence TP0 - Rapport TP0 comm - Docu outils - Diagramme de séquence : Réseau Exécution locale Décisions : - Composantes créées où il faut (à l’extérieur de l’entity). Le manager détruit à chaque début/fin de boucle les components avec un pointeur nul vers l’Entity parente. Une Entity détruite met le pointeur de toutes ses composantes vers lui-même à 0. - GameEngine : rôle de coordinateur. - Input hardware + software -> Translator : structure envoyée au Network définie. - Réseau : message directement transmis client->serveur->tous les clients. Message exécutée à la frame déterminée par le serveur (frame client + constante) - Désynchronisation : 2 solutions. Responsabilité au serveur ou au client. Choisir. CR (compte rendu) réunion du 2011-02-08 :Ordre du jour : - Daily - Maj UML + remarques - Diag séquence TP0 - Rapport TP0 comm - Docu outils Ajout de sujets : - Frames réseau et pulsation - Envoie d’actions/intentions/touches + gestion clavier - Gestion des pertes - Resynchro - TP0 plan : Synopsis (FL) Diagramme Réseau (JC) Synchro + Sécu + Chargement de scène (JF + FO) IA (FB) Prog par composantes (FL) - Mise à jour de l’UML + Diagramme de séquence - Docs outils : Florian a enfin retrouvé sa mémoire! Liens vers OgreMax à mettre sur le wiki. - Réseau : Envoi d’intentions d’action Frame rate hardcodé serveur Elapsed time local relié au framerate serveur envoyé au début Clients peuvent envoyer s’ils sont en retard Initialisation du jeu en fonction d’un timestamp… Retard framerate, préviens serveur et compense sur la suivante si possible Framerate min et max (25 / 60) : on commence à 60. Clients peuvent demander à augmenter, diminuer framerate Si message arrive en retard chez un client, resynchro demandée. Décisions : - Plan du TP0 - Envoi d’intentions d’actions - Frame rate hardcodé côté serveur (min 24/max 60) et ajusté sur demande des clients - Elapsed time local - 1er niveau d’alerte : 1,5 fois temps d’une frame -> message pour baisser le frame rate. - 2ème niveau d’alerte : message en retard : demande de resynchronisation. |
![]() | ![]() | ||
![]() | ![]() | ||
![]() | ![]() | ||
![]() | «On est tjs à la recherche de nouveaux talents, de femmes et de bière. Posez vos cv en sortant !» | ![]() | Pour la troisième fois consécutive, je dois ouvrir le carnet noir. Je pense tout particulièrement à Laurent villani, qui n’est plus... |
![]() | «Le système financier japonais: une remise en cause de lintermédiaire financier» | ![]() |