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

Slides:



Advertisements
Présentations similaires
Présentation des technologies SharePoint 2007
Advertisements

Sommaire Présentation du projet Déroulement du projet Partie technique
DirectX Guillaume Randon Microsoft Services
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Open Days 2006 Le Web 2.0 demain: produits, technologies, outils.
Cours du 21/09/2009. Pour définir un gadget, vous devrez mettre en place : Un fichier manifest nommé Gadget.xml Un fichier HTML/XHTML qui contient le.
Appels de fonctions natives sous C#
MUSIQUE GÉNÉRATIVE Rodrigo ANDRADE B ALMEIDA Petit Oral du DEA ESTC CAM.
Plan du cours La sérialisation: – comment stocker et restaurer les Objets? Les interfaces graphiques et la programmation évènementielle. –Comment concevoir.
JAV - TD 6 Structures de données JAVA
Projet J2EE Maverick XMLBeans Garcel Jean-Baptiste – Le Loc Martin – Muller Thibaut.
Les outils d’intégration continue
L’outil de présentation
26 juin 2009LEFEVRE Christophe1 Module raw et connexions distantes.
Université de La Rochelle Saisie et Mise à jour des fiches ECTS le 05/12/2001.
Traitement de texte ++.
Développement Rapide dApplications Web avec.NET « Mon premier site »
Maël Perreault Supervisé par Marc Frappier 12 décembre 2012.
Templavoila_framework Une révolution Cyril Wolfangel.
Création projet Android
Université de La Rochelle Saisie et Mise à jour des fiches ECTS le 01/12/2000.
Engin de planche à roulettes en réalité augmentée IMN 638 Université de Sherbrooke 31 novembre 2009 Stéfan Beauchamp Daniel Yannick Cadoret.
GRAPHISME PAR ORDINATEUR
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
Connecteur Team Foundation Server Project Server
Sixième cours Les chaînes de caractères et le passage de paramètres par référence Passage de paramètres par référence String.h.
Microsoft .NET.
Implémentation de Microsoft Office SharePoint Server 2007 Cours 5944A.
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
CSI1502 Principes fondamentaux en conception des logiciels
Xna Game Studio 3.1 Valentin Billotte ( ) Antoine Emond Vanessa Arnaud
22 8 février 2010 Valentin Billotte / Antoine Emond MVP Xna / Responsable Marketing GraphicStream-Viablue/MSDN Zune HD : le jeu vidéo mobile au top !
2 Développer, tester et déployer un site web avec WebMatrix (RIA101) Christine Dubois 9 février 2011.
Windows Sharepoint Services “v3“ (1/6) Les nouveautés Stéphane Crozatier Relation Technique Editeurs de Logiciels DPE - Microsoft France
QUALITY PARTNER FOR YOUR EXPANSION t-CARTOGRAPHY.
1 journée, 5 sessions, 1 réalisation.NET Enterprise Realization Day.
Informatique et science du numérique
PHP & My SQL.
Programmation Système et Réseau (sous Linux)
Soutenance de mi-parcours PFE Crea Development Manager
22 Visual Studio Tools et Office 2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Dev Consultant Microsoft France
GRAPHISME PAR ORDINATEUR SIF Contenu du cours 2 Introduction à XNA –Installation de XNA 4.0 –Premier projet –Gestion des ressources (images, vidéo.
Outil de conception d’applications WPF Anciennement « Interactive Designer » Orienté « intégrateur graphistes » Particularité : Blend tm est une application.
Programmation créative – Les vecteurs
Introduction à Visual Studio C++ (VC++)
Tech.days 2015#mstechdays Azure Machine Learning #mstechdays #mstechdays techdays.microsoft.fr.
Dyalog.Net Peter Donnelly Managing Director Dyadic Systems Toronto 30/10/2002.
SciTools Understand A Source Code Analysis and Metrics Tool
Code Contracts Gilles TOURREAU - MVP C# Architecte .NET / Formateur
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
GRAPHISME PAR ORDINATEUR SIF Contenu du cours 6 Transformation et animation de plusieurs modèles 3D avec XNA –Chargement des modèles 3D (modèle.
S'initier au HTML et aux feuilles de style CSS Cours 5.
Sif Démarrage de VC++ n Démarrer -> Tous les programmes -> Microsoft Visual Studio > Microsoft Visual Studio 2005.
ASP.NET AJAX Control Toolkit
Dév. d’application interactive III Tile Engine. Plan de leçon  Moteur de tuiles (tile engine)  Définition  Classes  Dans le cadre de ce cours, nous.
Use Local SQL Server with Azure Emulator. Configurer la DAL Fabriquer une DAL dans un projet de class library Configurer le data model avec la bdd locale.
[Title of the course] XNA et la 2D Campus-Booster ID : **XXXXX
Your team’s name. Préselection file You have just downloaded the preselection file: it’s the first step for you to win the challenge! In this file, you.
GRAPHISME PAR ORDINATEUR
Introduction à PHP TOURNADRE Guillaume - Informatique Réseaux URL :
GRAPHISME PAR ORDINATEUR SIF Contenu du cours 2 Introduction à XNA –Installation de XNA 4.0 –Premier projet –Gestion des ressources (images, vidéo.
2 Xna ? 3 XNA : une ouverture XNA est une marque, pas un produit Regroupe tous les efforts de MS dans le domaine du jeu vidéo XNA : les outils et les.
Création projet LibGdx
Premières notions de la 3D
ALGORITHME DE VOLÉES Programmation créatives Les volées, le spawning et les collisions.
BlueJ_VII 1 Java, les objets : tout de suite ! Conception de classes (1) Notes de cours associées au chapitre 7 tutorial BlueJ
Installation du PGI – CEGID
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
Informatique 2A Langage C 2 è séance. Objectifs de la séance 2 Début de la modularité avec les fonctions Création d’une première bibliothèque.
GRAPHISME PAR ORDINATEUR
Transcription de la présentation:

Developing a Multi-Platform Network Game Marie SAADEH – INF1495

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.

Problématique et objectif(s) du projet

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).

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.

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).

Analyse et conception

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

Analyse et conception Diagramme de Classes

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.

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…).

Analyse et conception Support Network

Valeurs Ajoutées

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

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.

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

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.

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

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

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

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.

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.

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

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

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).

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

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

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

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

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

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

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

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.

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

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; }

Démonstration

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);

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); }

Démonstration Importer les modèles dans XNA

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); }

Démonstration Intégration de la logique du jeu

Démonstration 6. Module Menu

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

Démonstration 8. Support Network

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

Merci pour votre attention