EIGD#14 - Présentation Unity

843 vues

Publié le

Présentation d'Unity à travers la création du projet Edge Of Eternity de Midgar Studio pour les #eigd2014

Publié dans : Logiciels
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
843
Sur SlideShare
0
Issues des intégrations
0
Intégrations
30
Actions
Partages
0
Téléchargements
11
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

EIGD#14 - Présentation Unity

  1. 1. Créer un jeu multiplate-forme avec Unity
  2. 2. • Edge of Eternity : J-RPG multiplate-forme • Equipe de 4 personnes: 1 Programmeur, 2 Artistes, 1 Musicien • Combinaison du gameplay des J-RPG Old-School avec les innovations modernes de gameplay Le jeu
  3. 3. Problématiques : • Ressources de programmation limitées • Ressources artistiques limitées • Le genre RPG requiert de gérer une quantité importante de données • Portage console le plus économique possible Choisir un moteur
  4. 4. Avantages : • Post-processing très flatteur • Bonnes performances même avec des scènes complexes • Système Blueprint pour créer rapidement des petites routines Inconvénients : • Langage spécifique (UnrealScript) avec une API très limitée • Impossibilité d’étendre l’éditeur • Ergonomie complexe à prendre en main et peu « artist-friendly » • Modèle économique royalties (25% share) Le challenger : Solution UDK
  5. 5. Avantages : • API très complète et langage de programmation C# ou JavaScript • Plugins natifs et extensibilité complète de l’éditeur • Ergonomie efficace et outils adaptés pour les artistes (Terrain, Lightmapping) • Approche par « GameObject » permettant de prototyper rapidement • Export multiplateformes « One-Click » Inconvénients : • Rendu très coûteux pour afficher la même chose que sur l’UDK • Peu optimisé pour les grandes scènes Solution Unity
  6. 6. • Pro vs Gratuit : Plus de fonctionnalités • Prix : 1500$ ou 75$/mois + 1500$ ou 75$/mois par plateformes • Les versions consoles sont gratuites (nécessite d’être approuvé par le constructeur avant) • Exporte sur : PC / Mac / Linux / PS4 / PS3 / PSVita / Xbox One / Xbox 360 / Wii U / iOS / Android / BlackBerry10 / Windows Phone / Windows Store / HTML5 WebGL Unity ?
  7. 7. • API complète avec .NET (C#, JS) complétée par l’API Unity • Rendu moderne avec le Deferred Rendering, DirectX11 Tesselation, Physically Based Shading, etc … • De nombreux outils embarqués comme : Terrain, Particules, Pathfinding, Lightmapping • IDE embarqué : Monodevelop mais vous pouvez utiliser Visual Studio Unity ?
  8. 8. • Sources de données hardcodées pour un prototypage rapide • L’approche par GameObject d’Unity permet d’obtenir un prototype en moins de quelques heures • Est-ce que le jeu est fun ? Prototyper rapidement permet de vérifier l’intérêt même du gameplay Création des prototypes (Prototype 1)
  9. 9. • Intégration du premier travail graphique, l’intégration est réalisée par les artistes grâce au workflow Projet / Scene « artist friendly » d’Unity. • Création des premiers outils pour avoir des sources de données génériques plutôt que hardcodées Création des prototypes (Prototype 2)
  10. 10. • L’outil terrain est très puissant et « artist friendly » • Le rendu du terrain peut être amélioré en ajoutant des shaders personnalisés • Gestion de la topologie par Heightmapping (Pas de voxels) • Arbres et végétations avec SpeedTree sur Unity 5 Outil embarqué : Terrain
  11. 11. • Machine à états pour les animations • Transitions et mélanges d’animations • Evènements déclenchables directement depuis les animations en direction du code Outil embarqué : Mecanim
  12. 12. • Les outils embarqués sont puissants mais ne répondent pas aux besoins spécifiques de certains genres de jeux • Création d’outils personnalisés avec les classes d’Unity (EditorWindow, CustomInspector) • Serialization XML grâce au framework .NET pour le format des données Extension de l’éditeur : Base de données objets
  13. 13. Extension de l’éditeur : Outil Nodal • Création d’un outil répondant au besoin de réussir à créer un jeu complexe avec un effectif réduit • Gestion de tous les aspects du jeu (Sorts, Cutscenes, Dialogues, Events) • Permet aux artistes de créer du contenu sans intervention de programmeurs
  14. 14. Outils de l’Asset Store • Les outils de l’Asset Store sont puissants mais ne remplacent pas les outils propres aux projets. • Généralement pratiques d’utilisation et puissants, les créateurs sont souvent réactifs pour régler les bugs éventuels. • Permet aux créateurs de jeux de se focaliser sur la création de leurs jeux sans réinventer la roue
  15. 15. Playtests et Iterations • Les playtests permettent de vérifier que chaque nouvelle fonctionnalité apporte du fun au gameplay • Les retours permettent d’ajouter de nouvelles fonctionnalités au jeu et à améliorer l’ergonomie • L’amélioration par les retours requiert souvent de modifier du code critique, l’approche par GameObject d’Unity permet de minimiser l’impact des modifications
  16. 16. • Unity Xbox One fonctionne beaucoup mieux sur Unity 5 que sur Unity 4 (Fog, Performances, etc …) • Le réseau utilise un protocole particulier d’authentification nécessitant des adaptations pour les fonctionnalités réseau • Beaucoup de fonctions indisponibles par rapport à l’API disponible sur PC • Presque un One Click Export ? Portage Console : Le cas Xbox One
  17. 17. • Incompatibilité de Shaders ! (Pas de fixed function shaders, instructions non supportées, limites arithmétiques d’instructions, etc …) Portage console : Le cas Xbox One
  18. 18. • Deux semaines pour le portage • Mise à jour des shaders pour respecter les contraintes de l’API • Optimisation du code pour moins utiliser le stockage (accès au disque dur de la console lent) et mettre en mémoire de nombreuses données (cache) Portage Console : Bilan Xbox One
  19. 19. Le jeu : Pré-Alpha
  20. 20. Le jeu : Pré-Alpha
  21. 21. Le jeu : Pré-Alpha
  22. 22. Le jeu : Pré-Alpha
  23. 23. ZELER MAURY Jérémy : Programmeur / Gérant (Midgar Studio) @zelerj • https://facebook.com/EoeGame • https://twitter.com/EoeGame Merci ! • https://facebook.com/midgarstudio • https://twitter.com/MidgarStudio • contact@midgar-studio.com

×