Présentation
L'Unreal Engine permet aux développeurs d'accéder à un rendu haut de gamme, à des outils avancés et à un flux de travail évolutif en vue de développer des jeux sur des terminaux mobiles. Pour obtenir un haut niveau de réalisme sur des terminaux mobiles, il est nécessaire de planifier minutieusement les tâches et d'optimiser les performances tout au long du développement.
Cette page reprend les concepts présentés sur la page Créer des projets multiplateforme dans l'Unreal Engine, et met l'accent sur le développement, l'optimisation et le déploiement de projets sur des plateformes mobiles.
Installer la prise en charge des builds Apple et Android avec l'Unreal Engine
Lors de l'installation de l'Unreal Engine sur votre ordinateur, plusieurs options s'offrent à vous lorsque vous cliquez sur le bouton Options. Dans le menu Options, vous pouvez installer les fichiers binaires requis pour chaque plateforme mobile avec l'Unreal Engine en utilisant la liste des plateformes cibles.
Les fichiers binaires fournissent les éléments nécessaires au développement de projets pour les plateformes cibles. Les kits de développement logiciel (SDK) et les kits de développement natif (NDK) abordés dans la section Empaqueter de cette page vous permettent d'empaqueter votre projet pour les plateformes cibles.
Après avoir activé les plateformes cibles sur lesquelles vous souhaitez développer, vous pouvez utiliser la section Empaqueter de cette page pour accéder aux SDK et NDK nécessaires pour empaqueter votre jeu.
Pour en savoir plus sur l'installation de ces plateformes cibles optionnelles lors de l'installation de l'Unreal Engine, consultez la page Installer l'Unreal Engine.
Packaging
Dans le cadre des opérations de build de l'Unreal Engine, l'empaquetage pour les terminaux mobiles implique certaines exigences. Chaque plateforme mobile possède des prérequis et des composants spécifiques nécessaires pour empaqueter les jeux et les déployer sur un appareil cible. Une fois les prérequis installés, les opérations de build fonctionnent de manière similaire.
Apple
Pour empaqueter les jeux sur des appareils Apple (iOS, tvOS, iPadOS), vous devez disposer d'un ordinateur Mac doté de Xcode pour empaqueter les builds signés. Les développeurs doivent suivre le processus de signature et de provisionnement du certificat sur la page des développeurs Apple. Pour en savoir plus, consultez la page Empaqueter des projets iOS.
Les utilisateurs de Windows peuvent utiliser des flux de travail spéciaux pour se connecter à distance à un Mac afin de déployer des builds et de préparer du contenu. Consultez la page Builds Mac à distance pour connaître les étapes à suivre pour configurer un pipeline de build à distance pour les appareils Apple sous Windows. Vous pouvez apprendre à compiler les shaders pour l'API Metal d'Apple sur la page Compilateur de shaders Metal Windows.
Android
Pour empaqueter des jeux sur les appareils Android, vous devez disposer d'Android Studio et respecter des exigences spécifiques relatives aux NDK et SDK Android.
Les utilisateurs de l'Unreal Engine peuvent utiliser Turnkey pour automatiser le processus de configuration. Consultez la page Configurer Turnkey pour en savoir plus sur la configuration des SDK et NDK Android.
S'il existe des installations d'Android Studio ou du SDK Android ou si celles-ci sont en conflit sur votre système, il est possible que vous deviez suivre le processus de configuration manuelle.
Les appareils Android varient selon la famille de processeur graphique. Certains sont compatibles avec le niveau de rendu Android Vulkan, d'autres avec OpenGL ES 3.2.
Les exigences varient également d'une boutique Android à l'autre. Assurez-vous de consulter les consignes et exigences de la boutique cible pour vous assurer de cibler une taille d'application acceptable. Si vous utilisez Google Play Store, vous pouvez utiliser les bundles d'applications Android.
Fonctionnalités de rendu
Dans la mesure où la plupart des terminaux mobiles présentent davantage de limitations matérielles que les ordinateurs de bureau et les consoles de jeux, l'Unreal Engine inclut plusieurs chemins de rendu pour les terminaux mobiles, en fonction des spécifications matérielles et des fonctionnalités prises en charge par ces derniers. Ces chemins de rendu utilisent des modèles axés sur les performances pour de nombreuses fonctionnalités de rendu de l'Unreal Engine, notamment l'éclairage et les textures, et suppriment les post-traitements non pris en charge.
L'Unreal Engine propose des modes d'ombrage différé conçus pour les terminaux mobiles, ainsi que la prise en charge du moteur de rendu pour les ordinateurs de bureau. Pour en savoir plus sur les modes d'ombrage et la manière de les utiliser, consultez la page Modes de rendu et d'ombrage.
La plupart des terminaux mobiles prennent en charge l'ombrage différé, qui génère des effets de lumière améliorés et s'avère souvent plus efficace, grâce à des instructions de matériau réduites, notamment pour les projets qui utilisent un éclairage dynamique, une illumination globale en temps réel et des effets de champ de distance tels que les ombres dynamiques.
Pour en savoir plus sur l'ombrage différé pour les terminaux mobiles, consultez la section Ombrage différé mobile de la page Modes de rendu et d'ombrage. Le forward shading peut être intéressant pour les projets qui utilisent un éclairage précalculé.
Pour en savoir plus sur les fonctionnalités de rendu globales pour les terminaux mobiles, consultez la page Fonctionnalités de rendu mobile.
Optimisation
Si l'optimisation est importante pour tout projet, elle est particulièrement critique lors du développement sur les plateformes mobiles, dont les capacités sont généralement inférieures à celles des PC ou des consoles. C'est la raison pour laquelle il est important d'intégrer l'optimisation dans votre processus de développement, de commencer tôt et de le faire régulièrement.
Vous pouvez utiliser les profils d'appareils et les paramètres d'évolutivité pour personnaliser les paramètres de rendu en fonction du matériel.
Les paramètres d'évolutivité permettent de définir des niveaux de qualité pour des fonctionnalités individuelles telles que les ombres, la végétation et les détails du maillage. Les profils d'appareils mappent ensuite ces paramètres sur les appareils compatibles. Pour en savoir plus sur les profils d'appareils et leur mode de création, consultez la page Définir des profils d'appareils. Consultez la page Paramètres d'évolutivité pour en savoir plus sur les différentes options.
Pour en savoir plus, consultez la page Personnaliser les profils d'appareils et l'évolutivité pour Android.
Le développement de la plupart des fonctionnalités de l'Unreal Engine est géré par des plug-ins. Par défaut, la grande majorité de ces plug-ins sont activés et disponibles dans la fenêtre Plug-ins (Modifier > Plug-ins). Pour les projets mobiles, vous pouvez désactiver de nombreux plug-ins qui n'ont pas d'incidence sur le développement mobile. Pour en savoir plus sur les étapes générales de l'optimisation mobile, consultez la page Guides d'optimisation mobile.
Taille de l'application
La taille de l'application est un facteur important dans le déploiement de jeux. Les boutiques en ligne imposent généralement des restrictions à ce niveau. Vous pouvez limiter la taille de l'application grâce à plusieurs optimisations clés.
Vous pouvez diviser votre projet en plusieurs fichiers .pak à l'aide de l'outil Chunking, qui permet d'organiser et de livrer le contenu plus efficacement.
Pour les projets iOS, consultez la page Taille d'un jeu iOS empaqueté pour apprendre à optimiser vos builds iOS. Pour les projets Android, consultez la page Réduire la taille des fichiers binaires Android pour apprendre à optimiser les builds Android.
Le système de livraison de contenu à la demande permet d'isoler les ressources non essentielles pour ne les livrer qu'au moment voulu.
ChunkDownloader est une solution de correctifs de l'Unreal Engine qui permet de télécharger et de monter le contenu au moment de l'exécution à partir d'un serveur distant. Vous pouvez utiliser ChunkDownloader pour fournir du contenu à la demande. Il n'est donc pas nécessaire d'empaqueter chaque ressource avec le projet et de réduire de taille du fichier de l'application. Consultez la page Utiliser ChunkDownloader pour l'application de correctifs pour en savoir plus.
Google Play Asset Delivery(GooglePAD) permet de livrer des fichiers de ressource volumineux, notamment des modèles, des textures et des sons sur des applications Android après leur installation, au lieu de regrouper tout le contenu dans le paquet initial de l'application, dans le but de réduire la taille du fichier de l'application.
Débogage
Pour procéder au débogage sur les terminaux mobiles, vous devez utiliser un ensemble d'outils et de flux de travail, dont certains sont propres à chaque plateforme. Ces outils permettent d'identifier les problèmes dans votre jeu et de garantir son bon fonctionnement sur les terminaux mobiles.
Apple
Pour déboguer votre projet sur des appareils Apple, vous devez utiliser Xcode, l'environnement de développement intégré d'Apple. Xcode fournit les outils nécessaires pour identifier et corriger les problèmes sur les appareils iOS, iPadOS et tvOS. Pour en savoir plus sur les flux de travail pris en charge, consultez la page Flux de travail Xcode modernisés.
La page Déboguer des projets iOS avec Xcode contient des instructions détaillées pour déboguer vos projets sur des appareils Apple. Vous pouvez par ailleurs consulter la page Utiliser le simulateur iOS Xcode pour en savoir plus sur la manière de tester votre projet sur divers terminaux iOS sans recourir à un appareil physique.
Android
Pour déboguer votre projet sur des appareils Android, vous pouvez utiliser Android Studio ou Visual Studio. Ces outils fournissent les fonctionnalités nécessaires pour identifier et résoudre les problèmes de votre jeu sur les appareils Android.
La page Déboguer les projets Android contient des instructions détaillées pour se lancer. Android Studio fournit un émulateur Android, qui permet de tester votre projet sur divers terminaux Android sans recourir à un appareil physique.
Visual Studio vous permet de déboguer avec Android Game Development Extension (AGDE).
Pour prendre connaissance des dernières conditions de licence de Google relatives au système ADGE, consultez la page Vue d'ensemble du système AGDE.
Vous pouvez utiliser Android Debug Bridge (ADB) pour interagir avec votre application sur votre terminal Android ou utiliser l'outil Unreal Android File Tool (UAFT), spécifiquement conçu pour travailler sur les applications de l'Unreal Engine.
Outil de prévisualisation pour terminaux mobiles
L'outil de prévisualisation pour terminaux mobiles est utile pour prévisualiser l'apparence de votre niveau sur différents terminaux mobiles et chemins de rendu mobiles directement dans le hublot du niveau. Bien que cette fonctionnalité serve de référence sur l'aspect du projet, elle peut ne pas être entièrement représentative des tests effectués sur le terminal proprement dit.
Les développeurs Unity connaissent sans doute le simulateur d'appareil d'Unity. L'outil de prévisualisation pour terminaux mobiles d'Unreal est l'équivalent du simulateur d'appareil. Il dispose de fonctionnalités supplémentaires, comme la prévisualisation de votre jeu dans un environnement de rendu émulé semblable à l'appareil sélectionné.
Lorsque vous activez les différents niveaux de rendu de prévisualisation, les matériaux de votre scène sont recompilés pour émuler l'aspect et les fonctionnalités de l'outil de prévisualisation de rendu que vous avez sélectionné. Vous pouvez utiliser l'outil de prévisualisation pour terminaux mobiles pour passer d'un niveau de rendu à l'autre en toute fluidité, sans avoir à redémarrer l'éditeur.
Pour en savoir plus sur l'utilisation et le test du rendu sur des terminaux spécifiques, consultez la page Outil de prévisualisation pour terminaux mobiles.