La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Developing a Multi-Platform Network Game Marie SAADEH – INF1495.

Présentations similaires


Présentation au sujet: "Developing a Multi-Platform Network Game Marie SAADEH – INF1495."— Transcription de la présentation:

1 Developing a Multi-Platform Network Game Marie SAADEH – INF1495

2 Plan Problématique et objectif(s) du projet: Description du jeu. Ressources demandées. Difficultés et solutions. Analyse et conception: Structure dun jeu. Diagramme de classes Outils employés Support Network Valeurs ajoutées. Démonstration.

3 Problématique et objectif(s) du projet

4 Problématique et objectif(s) du projet: Description du jeu: Type de Jeu: Jeu de combat 3D Nombre de joueurs: 2 Caractéristiques: Support Network local, Développement multiplateformes (PC et XBOX 360).

5 Problématique et objectif(s) du projet: Ressources demandées. Un jeu 3D nécessite la présence des ressources suivantes: - Modèles 3D: caractères et environnement. - Animations des caractères (walk, punch…) - Framework dintégration des modèles et des animations (XNA, DarkBasic, Game Maker…). - Codage de la logique du jeu.

6 Problématique et objectif(s) du projet: Difficultés et solutions. Un jeu 3D moderne nécessite une équipe de modelling, danimations, de programmation… (50 à 70 personnes…). Solution: importer des modèles existants, et générer uniquement les animations. De plus, choisir un jeu non-complexe au niveau programmation (Combat).

7 Analyse et conception

8 Structure dun jeu. La structure générale dun jeu est la suivante: Définition des variables Chargement de ressources (modeles, images…) Initialisation (Constructeur) Boucle Update (Logique du jeu) Boucle Draw

9 Analyse et conception Diagramme de Classes

10 Analyse et conception Outils employés: 3D Studio Max 2011: Importation des modeles 3D. Génération des animations. Exportation en un format.X (compatible avec XNA). XNA Game Studio 4.0: Importation des ressources. Génération des classes et intégration des librairies. Codage et implémentation.

11 Analyse et conception Pourquoi XNA? Représente un Environment de développement riche, par intégration dans Visual Studio. Support un développement multiplatformes (PC, XBOX, Mobile…) en utilisant un code commun. Offre plusieurs fonctionnalités utiles pour le développement 3D (Cameras, Network…).

12 Analyse et conception Support Network

13 Valeurs Ajoutées

14 Support multiplateforme (PC et XBOX 360): Déploiement sur XBOX 360 en ajoutant uniquement du code relatif aux controlleurs (GamePads).

15 Développement et prototypage 1. Importation des modèles dans 3D MAX Insérer un disque de jeu XBOX 360 basé sur le moteur Unreal Engine. Créer une image ISO en utilisant le programme S360X.

16 Développement et prototypage 1. Importation des modèles dans 3D MAX

17 Développement et prototypage 1. Importation des modèles dans 3D MAX Utiliser wx360 pour extraire les «modèles comprimés en format.XXX: Choisir limage « ISO » créé par S360X Naviguer au répertoire Asset et faire export du fichier convenable.

18 Développement et prototypage 1. Importation des modèles dans 3D MAX

19 Développement et prototypage 1. Importation des modèles dans 3D MAX

20 Développement et prototypage 1. Importation des modèles dans 3D MAX Extraire le fichier sélectionné par lutilitaire umodel. Ecrire la commande suivante dans command prompt pour extraire le modèle 3D (.PSK) et les textures : umodel –export –noanim char_catwoman.xxx

21 Développement et prototypage 1. Importation des modèles dans 3D MAX Le fichier CHAR_Catwoman est créé dans le même directoire que Umodel. Le fichier CHAR_Catwoman contient deux répertoires importants : SkeletalMesh : contient le modèle PSK qui sera importé dans 3DS MAX. Texture2D : contient les textures.

22 Développement et prototypage 1. Importation des modèles dans 3D MAX Dans 3DS MAX, utiliser le « ActorX Importer » pour importer le modèle PSK Il est nécessaire dassigner le « materials path » au fichier du caractère.

23 Développement et prototypage 1. Importation des modèles dans 3D MAX

24 Développement et prototypage 1. Importation des modèles dans 3D MAX

25 Développement et prototypage 1. Importation des modèles dans 3D MAX Configurer les « textures » du caractère avant de lexporter en format.X (DirectX).

26 Développement et prototypage 1. Importation des modèles dans 3D MAX Résultat:

27 Développement et prototypage 1. Importation des modèles dans 3D MAX Architecture de lenvironnement:

28 Valeurs Ajoutées Animation des caractères dans 3D MAX

29 Valeurs Ajoutées Animation des caractères dans 3D MAX

30 Valeurs Ajoutées Animation des caractères dans 3D MAX Walking:

31 Valeurs Ajoutées Animation des caractères dans 3D MAX Punching

32 Valeurs Ajoutées Animation des caractères dans 3D MAX Kicking

33 Développement et prototypage 4. Importer les modèles dans XNA Diviser le caractère en des sous-parties (car XNA supporte au maximum 80 Bones) et les exporter en formats.X en utilisant Panda DirectX Exporter.

34 Développement et prototypage 4. Importer les modèles dans XNA

35 Développement et prototypage 4. Importer les modèles dans XNA protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); // TODO: use this.Content to load your game content here //define two fighters, catwoman and batman, and load their models Fighter catwoman = new Fighter(Content, new string[] { "catwoman/catwoman_left", "catwoman/catwoman_right" }, new string[] { "catwoman/catwoman_diff", "catwoman/catwoman_spec", "catwoman/catwoman_normhqa" }, -100); catwoman.LoadSkinnedModel(); Fighter batman = new Fighter(Content, new string[] { "batman/batman_left", "batman/batman_right", "batman/batman_cape" }, new string[] { "batman/batman_diff", "batman/batman_spec", "batman/batman_normhqa" }, 100); batman.LoadSkinnedModel(); //add catwoman and batman to the fighters table fighters = new Fighter[2]; fighters[0] = catwoman; fighters[1] = batman; }

36 Démonstration

37 Développement et prototypage 4. Importer les modèles dans XNA public void drawMesh() { foreach (SkinnedModelMesh modelMesh in skinnedModel.Meshes) { //specify the model position and rotation modelMesh.Effect.World = Matrix.Identity * Matrix.CreateRotationY((float)Math.PI * parent.rotation) * Matrix.CreateTranslation(parent.translation, 0, 0);

38 Développement et prototypage 4. Importer les modèles dans XNA public void update(GameTime gameTime) { //add the rotation value rotation += 0.01f; //update the model parts foreach (FighterMesh mesh in meshes) { mesh.update(gameTime); }

39 Démonstration Importer les modèles dans XNA

40 Développement et prototypage 5. Intégration du logique du jeu public void walkForward() { if (getAnimation("Stand")) { setAnimationLoop("walk", false, 50); } public void crouch() { if (getAnimation("Stand") || getAnimation("walk")) { setAnimation("crouch", false, 50); } public void HP() { if (getAnimation("Stand") || getAnimation("walk")) { setAnimation("hp", false, 50); }

41 Démonstration Intégration de la logique du jeu

42 Démonstration 6. Module Menu

43 Démonstration 7. Intégration du menu et Ajout de lenvironnement

44 Démonstration 8. Support Network

45 Références Umodel compatibility: Umodel animation not supported: -GoingBeyond4 (without Network): us/library/bb975644%28v=XNAGameStudio.31%29.aspx -GoingBeyond5 (with Network): us/library/bb975645%28v=XNAGameStudio.31%29.aspx XNAnimation Library: Ue liste des jeux pour les models: /book?utm_source=xnaresources.com&utm_medium=link&utm_content=blog&utm_cam paign=mdb_ effects.pdf?utm_source=packtpub&utm_medium=free&utm_campaign=pdf - environmental-effects

46 Merci pour votre attention


Télécharger ppt "Developing a Multi-Platform Network Game Marie SAADEH – INF1495."

Présentations similaires


Annonces Google