Principes de base du développement de jeux Android

Stay organized with collections Save and categorize content based on your preferences.

Ce guide présente aux développeurs de jeux débutants les principaux outils et bibliothèques destinés au développement de jeux Android. Les guides de développement de jeux Android ciblent les développeurs qui ont déjà planifié ou configuré la majeure partie de l'environnement de développement de leur jeu. Par exemple, les développeurs de jeux expérimentés ont généralement un jeu en cours de développement qui utilise un moteur de jeu, un IDE et une API graphique spécifiques.

Dans la plupart des cas, nous recommandons aux débutants de choisir des options plus faciles à utiliser plutôt que des options avancées qui maximisent les performances. Si vous connaissez déjà ces outils et ces bibliothèques, vous pouvez vous reporter à cette présentation pour identifier les guides compatibles avec vos types d'optimisation spécifiques, tels que les hautes performances ou l'autonomie de la batterie.

Moteurs de jeu

Un moteur de jeu est un framework logiciel qui inclut un ensemble de bibliothèques et d'outils pour le développement de jeux. Vous pouvez utiliser ces bibliothèques pour ajouter à votre jeu un large éventail de fonctionnalités qui vous auraient empêché de vous concentrer sur le contenu et l'optimisation du jeu si vous aviez dû les concevoir vous-même. Ces fonctionnalités incluent généralement des visuels, des animations, du son, des boucles de jeu, la prise en charge des périphériques d'entrée, etc.

En outre, les moteurs de jeu comprennent généralement un IDE et d'autres outils permettant de configurer des fonctionnalités, de concevoir votre jeu, de le développer et de l'exporter vers Android.

Lorsque vous développez un jeu, l'un des choix les plus importants consiste à déterminer si vous allez développer un nouveau moteur de jeu, personnaliser un moteur de jeu existant ou utiliser un moteur de jeu tel quel.

Moteur de jeu prédéfini

Il s'agit de l'option que nous recommandons si vous débutez dans le développement de jeux. Avec un moteur de jeu prédéfini, vous ne perdez pas de temps à développer un moteur de jeu ni à ajouter des bibliothèques AGDK. C'est le moyen le plus simple de développer des jeux Android. Toutefois, pour pouvoir développer des jeux Android sans modifier le moteur, celui-ci doit déjà être compatible avec le développement Android.

Lorsque vous utilisez un moteur de jeu prédéfini, nous fournissons des optimisations, des outils de workflow et des bonnes pratiques Android supplémentaires. En outre, nous mettons à votre disposition des services Google Play, qui incluent une large gamme d'outils de réseaux sociaux et de distribution.

Voici quelques moteurs de jeu compatibles avec le développement Android :

  • Godot : moteur de jeu Open Source compatible avec plusieurs langages de programmation, dont GDScript, C# et C++.
  • Defold : moteur de jeu Open Source qui utilise le langage de programmation Lua.
  • Unity : moteur de jeu commercial très répandu qui utilise le langage de programmation C#.
  • Unreal : moteur de jeu commercial spécialisé dans les graphismes 3D haut de gamme. Il utilise le système de script visuel de BluePlan et le langage C++.

Pour plus d'informations, consultez le guide sur l'utilisation d'un moteur de jeu sur Android.

Moteur de jeu personnalisé

L'option la plus avancée consiste à créer un moteur de jeu ou à intégrer Android dans votre moteur de jeu existant. Bien que cette tâche soit complexe et qu'elle prenne beaucoup de temps, cette approche vous permet de développer un moteur parfaitement optimisé et adapté à vos besoins. Par exemple, de nombreux moteurs de jeu existants incluent des fonctionnalités supplémentaires qui augmentent la taille et réduisent les performances de votre jeu. Si vous excluez ces fonctionnalités, votre jeu peut gagner en efficacité.

En raison de la complexité et du temps nécessaire au développement d'un moteur de jeu, nous ne recommandons pas cette option aux développeurs débutants. Cette option convient davantage aux grandes organisations qui prévoient d'utiliser le moteur dans plusieurs jeux.

IDE

Les IDE (ou environnements de développement intégré) qui permettent de développer des jeux Android dépendent du moteur de jeu que vous utilisez et de votre workflow. Les moteurs de jeu les plus courants incluent un éditeur de jeu pour la conception et l'édition de code, que les développeurs de jeux utilisent généralement avec Android Studio. Sur Windows, vous pouvez également déboguer et profiler les jeux Android avec Visual Studio.

Éditeur de jeux

Les éditeurs de jeux intègrent souvent étroitement les fonctionnalités de conception de jeux dans l'édition de code. Dans certains cas, ils permettent même aux graphistes de réaliser des tâches de développement sans avoir à écrire de code. Si vous développez votre premier jeu Android, nous vous recommandons d'utiliser cette option avec Android Studio. Voici quelques-uns des avantages :

  • L'UI et les outils sont davantage axés sur la conception du jeu.
  • Les tâches de conception d'éléments et d'édition du code sont intégrées.
  • L'accent est mis sur le langage de programmation ou de script pris en charge par le moteur de jeu.
  • Des outils de modélisation et de rendu sont inclus.

Android Studio

Il s'agit de l'IDE officiel pour le développement d'applications Android. Comme Android Studio est axé sur le développement Android, nous vous recommandons de l'installer avec tous les autres IDE que vous utilisez. Voici certaines des tâches que vous pouvez effectuer avec Android Studio :

  • Déboguer le code écrit en C/C++, Java ou Kotlin
  • Gérer le SDK Android, ce qui est nécessaire pour créer des jeux Android
  • Créer, profiler et optimiser les jeux
  • Modifier le code C/C++ à l'aide du NDK Android
  • Configurer les packages d'applications et les paramètres Google Play

Pour en savoir plus, consultez la présentation d'Android Studio.

Visual Studio

Si vous développez votre jeu sur Windows avec Visual Studio, vous pouvez ajouter Android comme cible à l'aide de l'extension Android Game Development (AGDE) pour Visual Studio. Cette configuration cible les jeux en cours de développement à l'aide d'un projet Visual C++. Par conséquent, cette option cible les développeurs de jeux expérimentés. Vous pouvez utiliser AGDE pour effectuer les opérations suivantes :

  • Utiliser un projet Visual C++ existant pour créer un jeu Android
  • Déboguer et profiler un jeu à l'aide de Visual Studio
  • Utiliser des systèmes de compilation distribués comme Incredibuild ou SN-DBS

Pour en savoir plus, consultez la présentation d'AGDE.

NDK Android

Le NDK Android est un ensemble d'outils qui vous permet de développer une application Android en code natif à l'aide de C ou C++. Il permet d'améliorer les performances de votre jeu en lui fournissant un accès plus direct au matériel de l'appareil. Il vous permet également de réutiliser les bibliothèques C et C++, et de partager le code de jeu sur plusieurs plates-formes.

Ce NDK est requis par certains outils et bibliothèques AGDK, ainsi que par de nombreux moteurs de jeu pour le développement destiné à Android. L'une des raisons est qu'il s'agit d'un moyen courant et puissant d'accéder aux principales API graphiques de bas niveau prises en charge par les appareils Android.

Pour en savoir plus sur ce NDK, consultez la documentation sur le NDK Android.

API graphiques

Pour obtenir des performances graphiques 2D et 3D optimales, votre jeu Android doit utiliser une API graphique de bas niveau afin de communiquer avec un GPU. OpenGL ES et Vulkan constituent les options de développement de jeux Android les plus courantes.

Si vous optez pour un moteur de jeu non modifié compatible avec le développement Android, il est très probable qu'il utilise OpenGL ES ou Vulkan. Si vous utilisez AGDK pour développer un jeu en C ou C++, vous devez également utiliser OpenGL ES ou Vulkan. De plus, ce sont les seules API graphiques compatibles avec l'outil de profilage graphique AGI.

OpenGL ES

OpenGL ES offre les avantages suivants :

  • Hautes performances
  • Moins complexe et plus facile à utiliser
  • Compatible avec un plus grand nombre d'anciens appareils

Pour en savoir plus, consultez la présentation d'OpenGL ES pour Android.

Vulkan

Vulkan présentent les avantages suivants :

  • Des performances encore plus élevées
  • Plus de contrôle sur le GPU
  • Faible utilisation du processeur

Pour en savoir plus, consultez la présentation de Vulkan pour Android.