Introduction
Cette page présente les principaux systèmes et flux de travail de l'Unreal Engine, et les compare avec les éditeurs, outils et types de ressources couramment utilisés dans Unity. Ce document a pour but d'aider les développeurs Unity à comprendre comment appliquer des flux de travail familiers dans l'Unreal Engine. Pour en savoir plus sur chaque fonctionnalité, suivez les liens dans chaque section.
Cette page désigne les outils et les fonctionnalités disponibles dans les versions suivantes : Unreal Engine 5.5.4 et Unity 6 (6000.0.30f1). Les références aux fonctionnalités peuvent différer dans d'autres versions de l'un ou l'autre moteur.
Gameplay
Physique
Pour obtenir des informations plus détaillées sur les fonctionnalités offertes par Chaos Physics, consultez la page Physique.
Moteur de physique
L'Unreal Engine intègre la solution de simulation de physique légère Chaos Physics, conçue dès le départ pour répondre aux besoins des jeux de nouvelle génération. Chaos Physics intègre de nombreuses fonctionnalités, notamment la destruction, Networked Physics, la physique des corps rigides et les véhicules.
Le moteur de physique par défaut d'Unity pour les jeux 3D est NVIDIA PhysX, qui propose de nombreuses fonctionnalités similaires à Chaos Physics.
Système de destruction Chaos
Le système Chaos Destruction est un ensemble d'outils intégré à l'Unreal Engine permettant d'obtenir des rendus de destruction de haute qualité en temps réel. Outre l'impressionnant rendu visuel, ce système est optimisé pour les performances, et offre aux artistes et concepteurs un meilleur contrôle sur la création de contenu.
Le système Chaos Destruction utilise des collections de géométrie, c'est-à-dire un type de ressource constitué d'un ou plus maillages statiques, notamment ceux imbriqués dans des blueprints. Ces collections de géométrie peuvent être fracturées pour être détruites en temps réel.
Grâce à un flux de travail non linéaire intuitif, le système offre un contrôle sans précédent sur le processus de fracturation. L'utilisateur peut créer plusieurs niveaux de fracturation ainsi qu'une fracturation sélective sur des parties de la collection de géométrie, pour un meilleur contrôle artistique. Les utilisateurs peuvent également définir les seuils de dégâts par cluster qui déclencheront une fracture.
Pour en savoir plus sur le système Chaos Destruction, consultez la documentation relative à Chaos Destruction.
Networked Physics
La mise en réseau, ou réplication, dans les jeux, désigne la capacité de communiquer des informations de jeu entre plusieurs machines via une connexion Internet. L'Unreal Engine dispose d'un framework de mise en réseau robuste qui permet aux développeurs de simplifier la création de jeux multijoueurs.
Networked Physics fait partie du framework de mise en réseau et permet d'utiliser les simulations régies par la physique dans un environnement multijoueur. Dans l'Unreal Engine, la réplication de physique désigne des acteurs dont les mouvements répliqués simulent la physique. Ces simulations sont exécutées sur le client local (machine du joueur) pendant le jeu.
Pour en savoir plus sur la physique en réseau, consultez la documentation s'y rapportant.
Dynamique des corps rigides
Chaos Physics offre de nombreuses fonctionnalités de dynamique des corps rigides, notamment les réponses de collision, le traçage, les contraintes physiques ainsi que l'amortissement et la friction.
Collision
Dans l'Unreal Engine, la collision est intégrée à la plupart des composants d'acteur ayant recours au moteur de physique. Il est possible de modifier les paramètres de collision d'un acteur dans la section Collision du panneau Détails. Par exemple, vous pouvez activer le paramètre La simulation génère des événements d'impact pour permettre à l'objet de déclencher des événements auxquels vous pouvez accéder via des blueprints ou du code afin de détecter les collisions. Cette option est similaire à la gestion des collisions dans Unity avec OnCollisionEnter en C# ou programmation visuelle.
Pour en savoir plus sur la configuration des collisions pour vos acteurs, consultez la documentation Collision.
Traçage et ray casting
Le système Chaos Physics offre diverses méthodes de traçage. Les traces permettent de collecter des informations externes à un acteur. Il est alors possible d'utiliser ces informations au moment de l'exécution pour réagir à des changements de conditions de jeu.
Plusieurs options sont disponibles lors de l'exécution d'une trace. Vous pouvez utiliser différents types de traces : ligne, sphère, boîte ou capsule. Vous pouvez en outre tracer des occurrences uniques ou multiples, voire tracer des types d'objets ou des canaux de collision spécifiques.
Le système de traçage de l'Unreal Engine est similaire au système de ray-casting d'Unity.
Pour en savoir plus sur le traçage, consultez la documentation Traces et ray-casting.
Chaos Cloth
Chaos Cloth permet d'obtenir une simulation textile précise et performante pour les jeux et les expériences en temps réel. Ce système dispose de contrôles utilisateur avancés, ainsi que de réactions physiques telles que le vent, pour réaliser une vision artistique spécifique. Chaos Cloth est en outre doté d'un puissant système d'animation, qui déforme un maillage textile pour qu'il corresponde au maillage squelettique animé de son parent.
Chaos Cloth fournit par ailleurs une simulation textile par apprentissage automatique. Grâce à ce système, la simulation est plus fidèle qu'avec un modèle physique traditionnel ; il fait en effet appel à un ensemble de données entraîné qui peut être utilisé en temps réel pour produire des résultats qui n'étaient auparavant possibles qu'avec une simulation hors ligne.
Pour en savoir plus sur Chaos Cloth, consultez la documentation relative à Chaos Cloth.
Chaos Vehicles
Chaos Vehicles est le système léger de l'Unreal Engine permettant de simuler la physique des véhicules. Ce système offre plus de flexibilité à l'utilisateur, car il simule un nombre illimité de roues pour chaque véhicule. Vous pouvez également configurer un nombre illimité de vitesses avant et arrière pour une personnalisation accrue.
Il est possible de configurer Chaos Vehicles pour des simulations de véhicules complexes. Vous pouvez ajouter autant de surfaces aérodynamiques que vous le souhaitez afin de générer une force d'appui ou une portance à des emplacements spécifiques du châssis. Ces surfaces peuvent simuler des déflecteurs de véhicules, voire des ailes ou des gouvernes d'avion. Chacune de ces surfaces de contrôle peut être manipulée à l'aide des paramètres de roulis, de tangage et de lacet.
Pour en savoir plus sur Chaos Vehicles, consultez la documentation relative à Chaos Vehicles.
Simulations de fluides
L'Unreal Engine comprend un ensemble d'outils intégrés permettant de simuler des effets de fluides en 2D et en 3D en temps réel. Ces systèmes utilisent des méthodes de simulation qui reposent sur la physique afin de produire des effets réalistes pour des éléments comme les flammes, la fumée, les nuages, les cours d'eau, les éclaboussures et les vagues sur la plage.
La trousse à outils est conçue comme une plateforme d'expérimentation ouverte grâce à des étapes de simulation, des modules réutilisables et des interfaces de données robustes.
Pour en savoir plus sur les simulations de fluides, consultez la documentation relative à la Simulation des fluides.
Intelligence artificielle
L'Unreal Engine intègre divers systèmes permettant de créer et de gérer des agents IA (PNJ) pendant le jeu.
Simuler des agents IA à grande échelle
MassEntity est un framework de gameplay, conçu pour les simulations orientées données à haute performance. MassEntity permet de gérer et de rendre efficacement un grand nombre d'entités à l'écran.
Pour en savoir plus, consultez la documentation MassEntity.
Simuler le comportement d'un agent IA
L'Unreal Engine dispose des fonctionnalités d'agent IA dans les catégories suivantes : perception et stimuli, prise de décision, navigation dans le monde et interactions avec l'environnement. Chaque catégorie est dotée d'un ou de plusieurs systèmes qui vous aideront à obtenir les résultats souhaités.
Perception et stimuli
Dans le domaine de la perception et des stimuli, l'Unreal Engine intègre les composants IA suivants : Détection par pion, Émission de son par pion et Perception IA.
Vous pouvez utiliser la perception IA pour définir et gérer les sens auxquels un agent IA a accès. Vous pouvez ajouter le composant Perception IA au blueprint AIController d'un pion via la fenêtre des composants. Il sert à définir les sens à écouter, les paramètres de ces sens et la manière de réagir lorsqu'un sens est détecté.
Vous pouvez également utiliser diverses fonctions pour obtenir des informations sur ce qui a été détecté, sur les acteurs qui ont été détectés, voire pour activer ou désactiver un type de détection particulier.
Pour en savoir plus, consultez la documentation Perception IA.
Prise de décision
Dans le domaine de la prise de décision, l'Unreal Engine fournit des arbres de comportement et des State Trees. Ces ressources contiennent la logique que les agents IA utilisent pour prendre des décisions pendant le jeu.
Les ressources Arbre de comportement contiennent un graphique de décision avec une grande variété de nœuds contenant la logique que l'agent IA peut exécuter. L'arbre commence à la racine et exécute certains nœuds en fonction des données stockées dans une ressource de tableau noir ou d'autres données provenant de l'agent proprement dit. Les arbres de comportement constituent un moyen intuitif de visualiser la manière dont les agents IA prennent des décisions. Vous pouvez les configurer pour être réutilisables et flexibles.
Pour en savoir plus, consultez la documentation sur les Arbres de comportement.
StateTree est une machine à état hiérarchique générique qui associe les sélecteurs des arbres de comportement aux états et transitions des machines à état. Vous pouvez utiliser StateTree pour créer une logique ultra performante qui reste à la fois flexible et organisée.
Pour en savoir plus, consultez la documentation
Navigation dans le monde
Dans le domaine de la navigation dans le monde, l'Unreal Engine dispose d'un système de navigation complet pour les agents IA.
Le système de navigation fournit des fonctionnalités de pathfinding efficaces aux agents IA de votre projet. Vous pouvez créer un acteur de maillage de navigation dans votre niveau pour construire et cartographier la navigation de vos agents. Vous pouvez par ailleurs utiliser des modificateurs de maillage de navigation et des zones de navigation personnalisées pour modifier le coût de traversée de certaines zones, ce qui influe activement sur la manière dont les agents IA choisissent le chemin de navigation optimal vers leur cible.
En outre, le système propose deux systèmes d'évitement : Reciprocal Velocity Obstacles et Detour Crowd Manager, qui permettent aux agents IA d'éviter les éléments dynamiques dans leur environnement et entre eux.
Pour en savoir plus, consultez la page Système de navigation.
Interactions avec l'environnement
Dans le domaine des interactions avec l'environnement, l'Unreal Engine est doté d'objets intelligents.
Les objets intelligents sont des objets placés dans un niveau avec lesquels les agents IA et les joueurs peuvent interagir. Ces objets contiennent toutes les informations nécessaires à ces interactions. Les objets intelligents font partie d'une base de données globale et utilisent une structure de partition spatiale. Cela signifie qu'ils peuvent être interrogés à l'exécution à l'aide de filtres tels que la zone de recherche autour de l'agent et des tags de gameplay.
Pour en savoir plus, consultez la page Objet intelligent.
Apprentissage automatique
Pour concevoir des solutions d'IA plus complexes où les agents IA peuvent apprendre et s'adapter, l'Unreal Engine propose le plug-in Learning Agents, que vous pouvez utiliser pour former des agents IA à l'aide d'algorithmes tels que Reinforcement Learning. Il s'agit de l'équivalent Unreal Engine du paquet MLAgents d'Unity.
Pour en savoir plus, consultez la page Learning Agents.
Animation des personnages et des objets
Dans l'Unreal Engine, les blueprints d'animation équivalent aux contrôleurs d'animation d'Unity. Les blueprints d'animation comprennent un graphique d'animation et un graphique d'événement de blueprints standard, qui permettent de définir des paramètres et de programmer des comportements et une logique d'animation complexes en un seul point d'entrée.
Pour en savoir plus, consultez la page Blueprints d'animation. [Coordinate System and Spaces (Système de coordonnées et espaces)](https://dev.epicgames.com/documentation/fr-fr/unreal-engine/coordinate-system-and-spaces-in-unreal-engine).
Si vous préférez organiser les animations avec une machine à état, vous pouvez créer des nœuds State Machine dans votre graphique d'animation, puis double-cliquer dessus pour ouvrir leurs propres sous-graphiques spécialisés. Vous êtes alors en mesure de créer des états, des conduites et des alias d'état, puis de créer des connexions entre eux. Chaque état contient son propre graphique d'animation, qui contrôle le résultat de l'état et les connexions permettent de contrôler les transitions.
Pour en savoir plus, consultez la page State Machines.
Les espaces de fusion définissent un graphique d'animations qui fusionnent en fonction de paramètres. Par exemple, un espace de fusion 2D peut fusionner des animations de marche vers l'avant, à reculons, vers la gauche et vers la droite en fonction de la vitesse et de l'orientation d'un personnage.
Pour en savoir plus, consultez la page Espaces de fusion.
Unity utilise l'outil Chronologie pour animer les séquences cinématiques. L'éditeur de Sequencer de l'Unreal Engine est l'équivalent de l'outil Chronologie dans Unity. Il propose une interface similaire à un éditeur non linéaire pour la coordination des animations, des effets et des mouvements de caméra. Vous pouvez utiliser Sequencer pour définir des séquences de niveau, qui représentent des cinématiques ou des animations autonomes pour les personnages et les objets.
Pour en savoir plus sur la création de séquences, consultez la page Sequencer Editor.
L'Unreal Engine comprend également le système Control Rig, qui permet d'articuler des maillages squelettiques pour les animer directement dans l'éditeur. Grâce à Control Rig, vous pouvez créer et articuler des contrôles personnalisés sur un personnage, les animer dans Sequencer et utiliser divers autres outils d'animation pour faciliter le processus d'animation.
Pour en savoir plus sur le squelettage dans l'Unreal Engine, consultez la page Control Rig.
Pour capturer et exporter des séquences d'images et de vidéos dans l'Unreal Editor, vous pouvez utiliser l'outil Movie Render Queue. Cet outil est l'équivalent de l'outil Enregistreur d'Unity. Movie Render Queue permet de rendre et d'exporter des séquences image par image, des images dans le jeu ou des enregistrements vidéo sans perte de qualité.
Pour en savoir plus sur Movie Render Queue, consultez la page Rendering High Quality Frames with Movie Render Queue.
Framework de gameplay
Dans l'Unreal Engine, le framework de gameplay est une collection de classes qui vous fournit une base modulaire sur laquelle créer votre expérience de jeu, telles que le mode de jeu, l'état du joueur, les contrôleurs, les pions et les caméras.
Dans Unity, les structures similaires sont gérées par des composants tels que les scripts CharacterController et MonoBehaviour, joints aux GameObjects pour définir les comportements.
Pour en savoir plus sur l'utilisation du framework de gameplay, consultez la page Framework de gameplay.
Entrée
Le système de commandes avancé est conçu pour gérer les commandes des joueurs sur plusieurs appareils, notamment les claviers, les manettes de jeu et les écrans tactiles.
Vous pouvez définir des actions de commande (pour les actions comme le saut ou le tir) et des axes de commande (pour les commandes en continu, comme les mouvements ou la rotation de la caméra). Vous pouvez lier ces actions et axes à des touches, des boutons, voire des gestes spécifiques, ce qui vous offre un haut degré de personnalisation.
Pour commencer à utiliser le système de commandes avancé, créez des ressources de commandes avancées dans le navigateur de contenu en cliquant sur le bouton + Ajouter et en sélectionnant Commande. Vous pouvez configurer ces ressources de manière à définir les raccourcis clavier et les commandes de votre jeu.
Vous pouvez lier ces actions et ces axes aux événements de commande du joueur dans votre logique de jeu. Ce système permet de gérer différents schémas de commande (par exemple, clavier ou manette) et de définir des systèmes de contrôle complexes.
Il est probable que les développeurs Unity connaissent le système de commandes Unity, dont la fonctionnalité est similaire à celle du système de commandes avancé de l'Unreal Engine. Dans l'Unreal Engine, Enhanced Input constitue la norme pour la gestion d'entrées complexes ou le remappage de contrôle en cours d'exécution.
Pour en savoir plus sur la définition d'une commande dans votre projet, consultez la page Système de commandes avancé.
Créer et concevoir des mondes
La fonctionnalité de création de mondes dans l'Unreal Engine est divisée en différents modes d'éditeur dans le hublot de niveau.
Modélisation et prototypage de niveau
Le mode Modélisation propose des fonctionnalités similaires à l'extension ProBuilder d'Unity, avec des outils complets de modification des vertex, des arêtes, des faces et des UV, comme dans un logiciel de modélisation.
Vous pouvez activer le mode Modélisation en cliquant sur le menu déroulant Modes dans le hublot et en sélectionnant Modélisation.
Pour en savoir plus sur la modélisation dans l'Unreal Engine, consultez la page Présentation du mode Modélisation.
Créer un terrain/paysage
Le mode Paysage propose une fonctionnalité similaire au système Terrain d'Unity. Vous pouvez utiliser le mode Paysage pour créer un paysage et le façonner à l'aide d'un ensemble d'outils similaire au système Terrain d'Unity, notamment les outils Élever, Abaisser et Aplanir.
Vous pouvez activer le mode Paysage en cliquant sur le menu déroulant Modes du hublot et en sélectionnant Paysage.
Pour en savoir plus, consultez la page Guide de démarrage rapide sur les paysages. Consultez également la page Paysages extérieurs pour en savoir plus sur la création d'un terrain pour les environnements extérieurs vastes et ouverts.
Foliage
Le mode Végétation est similaire au système Terrain d'Unity ; il permet d'ajouter et de gérer la végétation. En mode Végétation, vous pouvez peindre des arbres, de l'herbe et toute autre végétation dans votre niveau, en ajustant les propriétés comme la densité, la hauteur et la rotation de chaque élément.
À la différence du système Terrain d'Unity, le mode Végétation de l'Unreal Engine permet de peindre la végétation sur n'importe quel objet, pas uniquement le paysage. Ce mode constitue un moyen intuitif d'habiller votre monde d'éléments naturels tout en vous permettant de contrôler leur apparence dans le paysage ou sur n'importe quelle surface de votre niveau.
Vous pouvez activer le mode Végétation en cliquant sur le menu déroulant Modes dans le hublot et en sélectionnant Végétation.
Pour en savoir plus, consultez la page Mode Végétation. Consultez également la page Outils de monde ouvert pour en savoir plus sur le remplissage procédural de grands espaces avec des maillages statiques afin de créer des espaces extérieurs naturels et vivants.
Génération procédurale de contenu (PCG)
Le framework de génération procédurale de contenu (PCG) est une trousse à outils permettant de créer du contenu procédural dans l'Unreal Engine. La PCG offre aux artistes et concepteurs la possibilité de créer du contenu et des outils rapides et itératifs plus ou moins complexes, qu'il s'agisse de ressources utilitaires (génération de biome ou de bâtiments) ou de mondes entiers.
La PCG est conçue pour être extensible et interactive. Elle s'intègre aux pipelines existants de création de mondes, et estompe les frontières entre flux de travail traditionnels et procéduraux.
Pour en savoir plus sur la création de contenu procédural dans l'Unreal Engine, consultez la page Framework de génération procédurale de contenu.
Système d'eau
Le système d'eau permet de créer des rivières, des lacs et des océans qui interagissent avec le terrain de votre paysage grâce à un flux de travail basé sur des splines.
Les développeurs Unity connaissent sans doute le système d'eau disponible pour les projets qui utilisent le HDRP. Évolutif, le système d'eau de l'Unreal Engine peut s'adapter à des projets de toutes tailles et est compatible avec toutes les plateformes.
Pour en savoir plus sur l'activation de l'eau dans vos niveaux, consultez la page Système d'eau.
Visuels et rendu
Unity utilise le système programmable de pipeline de rendu (SRP) et fournit des modèles tels que High Definition Render Pipeline (HDRP). L'Unreal Engine dispose d'un pipeline de rendu unifié, robuste et hautement personnalisable. En d'autres termes, la prise en charge des appareils, la fonctionnalité et l'ensemble des fonctions ne sont pas répartis entre les modèles.
Dans l'Unreal Engine, vous pouvez utiliser les paramètres d'évolutivité pour modifier le réalisme visuel de votre jeu. Pour en savoir plus, consultez la page Référence sur l'évolutivité.
Sources lumineuses
Les flux de travail d'éclairage dans l'Unreal Engine sont similaires à ceux d'Unity. Vous pouvez ajouter des lumières ou en supprimer dans un niveau. Vous disposez de différentes sources d'éclairage, notamment l'éclairage directionnel, le point lumineux et le projecteur.
Accédez à Créer > Lumière pour choisir la forme de la source lumineuse que vous souhaitez ajouter à votre niveau. Un nouvel objet est ainsi créé. Pour en savoir plus sur les types d'éclairage et la façon de les utiliser, consultez la page Types de lumières et leur mobilité.
Sky Light
La lumière naturelle capture les parties les plus éloignées de votre niveau et les applique à la scène sous forme d'éclairage. Autrement dit, l'apparence du ciel et son éclairage/ses reflets correspondent, même si votre ciel provient de l'atmosphère, ou de couches de nuages au-dessus d'une skybox, ou de montagnes lointaines.
Par défaut, un nouveau niveau dans l'Unreal Engine comporte un dossier Éclairage dans le panneau Organiseur. Ce dossier contient un ensemble d'objets d'éclairage par défaut, notamment DirectionalLight, ExperimentalHeightFog et SkyLight. Pour en savoir plus, consultez la page Lumières naturelles.
Illumination globale et reflets avec Lumen
Lumen est le système d'illumination globale et de reflets entièrement dynamique de l'Unreal Engine, conçu pour les consoles de nouvelle génération ; il s'agit du système d'illumination globale et de reflets par défaut. Autrement dit, la lumière rebondit et interagit avec les surfaces, créant ainsi un éclairage naturel instantané sans avoir à précalculer l'éclairage avec des flux de travail précalculés.
Pour en savoir plus sur l'utilisation de l'illumination globale dynamique et les reflets dynamiques dans votre projet, consultez la page Illumination globale et reflets de Lumen.
Post-Processing
Dans Unity, le post-traitement est géré par l'intermédiaire de volumes. Après avoir créé un GameObject avec un composant Volume, vous pouvez lui attribuer un profil de post-traitement et déterminer s'il est global ou local.
Dans l'Unreal Engine, le post-traitement est principalement géré par le biais de volumes placés. Il existe toutefois d'autres méthodes de post-traitement. Globalement, le post-traitement fonctionne de façon similaire, et vous pouvez remplacer les valeurs par défaut.
| Différentes méthodes d'application du post-traitement | Description |
|---|---|
Paramètres du projet | Par défaut, l'Unreal Engine applique un ensemble d'effets de post-traitement à votre jeu en fonction des paramètres d'évolutivité. Ces paramètres sont appliqués à l'ensemble du projet, sauf s'ils sont remplacés. Vous pouvez modifier les effets de post-traitement par défaut qui s'appliquent à l'ensemble du projet en accédant à Paramètres du projet > Moteur > Rendu. |
Composant de caméra | Chaque composant de caméra possède son propre ensemble de paramètres de post-traitement modifiables. Ces paramètres s'appliquent à chaque caméra individuellement ; autrement dit, les caméras qui ne remplacent aucun paramètre appliquent les effets par défaut définis dans les paramètres du projet ou utilisent les valeurs appliquées à un volume placé. |
Volume de post-traitement | Il est possible d'ajouter un volume de post-traitement à un niveau en accédant à Ajouter > Volume. Un nouvel acteur de niveau est ainsi créé ; il remplace les paramètres de post-traitement par défaut, à l'instar du composant Volume dans Unity. Ces volumes peuvent appliquer un post-traitement lorsque la caméra du joueur se trouve à l'intérieur du volume. Ils peuvent également appliquer n'importe quel remplacement de manière globale à l'ensemble du niveau lorsque leur paramètre Étendue infinie (non consolidée) est activé. Ce paramètre est similaire à l'option Mode global du framework Volume d'Unity. |
Materials
Unity utilise Shader Graph pour définir de nouveaux shaders. Dans l'Unreal Engine, l'outil équivalent est le système de matériaux. Dans l'Unreal Engine, les shaders et les matériaux se distinguent les uns des autres de la manière suivante :
Un shader est une construction de bas niveau en C++ qui permet de définir un modèle d'ombrage de base, par exemple Éclairé, Non éclairé, Revêtement transparent ou Poil. Celui-ci détermine les entrées du shader, comme Métallique ou Translucide, et leur réaction à la lumière.
Un matériau est un graphique logique d'entrées de texture, de formules et d'instructions transmises à un shader. Il représente les qualités de surface d'un objet unique et l'expression spécifique de ce shader.
Pour créer un matériau, faites un clic droit n'importe où dans le navigateur de contenu et cliquez sur Créer une ressource de base > Matériaux. L'éditeur de matériau affiche un graphique vierge avec le nœud Main Material.
Cliquez sur le nœud Main Material pour afficher les propriétés correspondantes dans le panneau Détails. Vous pouvez sélectionner différents shaders avec le paramètre Modèle d'ombrage.
Si vous souhaitez appliquer un matériau unique à plusieurs maillages, nous vous recommandons d'utiliser des instances de matériau. Il s'agit de versions paramétrées de matériaux que vous pouvez utiliser pour créer des éléments variés et originaux sans frais supplémentaires.
Chaque instance de matériau utilise un matériau ou une autre instance de matériau comme parent (ou matériau "principal") pour effectuer des modifications. Tous les nœuds qui ont été paramétrés dans les matériaux principaux sont accessibles dans l'éditeur de matériau instancié. Ces paramètres exposés peuvent permettre de créer des variations infinies à partir d'un matériau source unique pour générer des variations de couleurs, appliquer différentes textures, augmenter ou réduire des détails, etc.
L'utilisation d'instances de matériau est plus efficace lorsque vous utilisez un matériau principal et ses matériaux enfants pour créer des variations.
Pour créer une instance de matériau, faites un clic droit sur un matériau dans le navigateur de contenu, puis cliquez sur Créer une instance de matériau.
Pour en savoir plus sur les matériaux et les instances de matériau, consultez la page Matériaux et la page Création et utilisation d'Instances de matériau. Pour en savoir plus sur l'éditeur de matériau proprement dit, consultez la page Material Editor Guide.
Nanite
Nanite est le système de géométrie virtualisée de l'Unreal Engine qui fait appel à un format de maillage interne et une technologie de rendu pour restituer des détails à l'échelle du pixel et un nombre élevé d'objets. Ce système se concentre uniquement sur les détails qui peuvent être perçus par l'œil.
Le système Nanite offre divers avantages aux projets, notamment l'augmentation de plusieurs ordres de magnitude dans la complexité de la géométrie, et un nombre de triangles et d'objets plus élevé que ce qui était possible auparavant en temps réel. Les budgets d'image ne sont plus limités par l'utilisation de polygones, d'appels à générer et de mémoire de maillage.
Pour en savoir plus sur le système Nanite et sur la façon de l'utiliser dans vos projets, consultez la page Géométrie virtualisée Nanite.
Audio
Unity utilise un framework de sources audio dans lequel chaque source audio du monde de votre jeu est associée à une seule voix. Unity utilise Mixers pour appliquer des paramètres de canaux audio à ces sources.
Le plug-in MetaSounds de l'Unreal Engine est un système de génération audio capable de contrôler entièrement un graphique de traitement des signaux numériques (DSP) dans un environnement de programmation visuelle similaire à Blueprint.
Pour en savoir plus, consultez la page MetaSounds.
Pour le mixage audio, nous vous recommandons d'utiliser le plug-in Audio Modulation, qui fournit un contrôle dynamique des paramètres audio, comme le volume et la hauteur, à partir des systèmes Composant ou Blueprint de l'Unreal Engine.
Pour en savoir plus, consultez la page Vue d'ensemble de la modulation audio.
Les signaux sonores sont des objets audio qui encapsulent des tâches complexes de conception acoustique dans un graphique de nœud. Ils permettent de modifier dynamiquement certaines parties de la conception d'un effet sonore en organisant et en modifiant les nœuds sonores, pour créer une sortie audio complexe.
Pour en savoir plus sur les signaux sonores, consultez la page Guide de référence sur les signaux sonores.
Pour une présentation détaillée des systèmes audio de l'Unreal Engine, consultez la page Utiliser l'audio.
Effets visuels
Les systèmes de particules Niagara sont équivalents aux systèmes de particules d'Unity et au graphique d'effets visuels. Vous pouvez créer des émetteurs Niagara pour générer des émetteurs de particules uniques, ou des systèmes Niagara pour composer plusieurs émetteurs dans un effet visuel plus complexe. Lorsque vous créez un nouveau système ou un émetteur de ressource, vous pouvez utiliser un émetteur Niagara existant comme modèle.
Le graphique Vue d'ensemble du système de l'éditeur Niagara propose une interface de modification des particules similaire à celle de l'éditeur de système de particules d'Unity. Les émetteurs et systèmes Niagara sont constitués de composants modulaires qui permettent de gérer une grande variété de comportements ou d'événements. Chaque module que vous ajoutez augmente la complexité de votre système de particules et ajoute de nouveaux paramètres à configurer.
Pour en savoir plus, consultez la page Creating Visual Effects.
Vous pouvez utiliser le plug-in Niagara Fluids pour ajouter de la fumée, du feu, des explosions, de l'eau, des éclaboussures et d'autres effets physiquement crédibles à vos projets.
Pour en savoir plus, consultez la page Niagara Fluids.
Interface utilisateur
Dans l'Unreal Engine, l'éditeur Unreal Motion Graphics, ou UMG, est l'équivalent de la trousse à outils de l'interface et la bibliothèque de composants d'interface d'Unity. UMG fournit un éditeur WYSIWYG qui permet de créer des interfaces utilisateur à partir de divers widgets comme des boutons, des éléments de texte ainsi que de nombreux conteneurs et grilles.
Pour créer une nouvelle interface utilisateur, créez un nouveau blueprint de widget dans le navigateur de contenu. Lorsque vous ouvrez un blueprint de widget, l'éditeur UMG s'ouvre et affiche une grille vierge avec un panneau Palette de widgets à gauche et un panneau Détails à droite. Un bouton dans le coin supérieur droit permet de basculer entre les vues Concepteur et Graphique.
Utilisez la vue Concepteur pour organiser les widgets dans votre blueprint de widget. Cliquez sur les widgets dans le panneau Palette et faites-les glisser dans votre graphique, puis utilisez la hiérarchie pour modifier l'ordre de génération. Les widgets situés en bas de la liste s'affichent en haut. Activez la case Est variable dans le panneau Détails d'un widget pour l'exposer au script de votre interface.
Comme son nom l'indique, tout blueprint de widget que vous créez peut être utilisé comme widget dans d'autres blueprints de widget. Ils figurent dans la palette sous la catégorie Créés par l'utilisateur. Vous pouvez ensuite utiliser les blueprints de widget pour créer des menus complets et des ATH, mais également pour créer des composants réutilisables comme des boutons ou des barres de progression.
Pour en savoir plus, consultez la page UMG UI Designer Quick Start Guide. Consultez également la page Créer des interfaces utilisateur pour en savoir plus sur la génération et l'affichage de l'interface utilisateur.
Sauvegarder et charger le jeu
La plupart des jeux modernes offrent la possibilité de quitter la partie, puis de la reprendre au même endroit. Selon le type de jeu que vous créez, vous n'aurez besoin que de quelques informations de base, par exemple le dernier point de contrôle atteint par le joueur, ou d'informations plus détaillées.
Les développeurs Unity connaissent sans doute PlayerPef, qui permet de stocker les préférences du joueur entre les sessions de jeu, ou différents paquets de la boutique de ressources, qui proposent des fonctionnalités de sauvegarde et de chargement. Ces fonctionnalités sont intégrées à l'Unreal Engine.
Pour en savoir plus sur la possibilité de sauvegarder et de charger des sessions de jeu dans l'Unreal Engine, consultez la page Sauvegarder et charger votre jeu.
Comparer les fonctionnalités entre les moteurs
Dans cette section, nous vous présentons une vue d'ensemble des noms et du mode d'utilisation de certains outils et fonctionnalités dans Unity et l'Unreal Engine.
| Objectif | Unreal Engine | Unity |
|---|---|---|
| Interface utilisateur (IU) | ||
Créer une interface utilisateur | Unreal Motion Graphics (UMG) | Boîte à outils d'IU |
| Construction d'univers | ||
Créer des paysages de toutes formes | Mode Paysage | Système Terrain |
Ajouter de la végétation à un paysage | Mode Végétation | Végétation du système Terrain |
Construire des ébauches de niveau | Mode Modélisation | ProBuilder |
Créer des surfaces d'eau et des effets sous-marins | Système d'eau | Système d'eau |
Générer des mondes et des outils de manière procédurale | Génération procédurale de contenu (PCG) | Outils tiers |
| Optimisation | ||
Suite de profilage pour identifier les problèmes de performances | Traçage | Profileur |
| Gameplay | ||
Gérer les commandes des joueurs | Système de commandes avancé | Système de commandes |
Programmation visuelle | Éditeur de blueprint | Programmation visuelle (anciennement appelé Bolt) |
Langages de programmation et scripts pris en charge | C++ (programmation) | C# (scripts) |
Moteur de physique | Chaos Physics | NVIDIA PhysX |
Sauvegarder et charger des données de jeu | Objets SaveGame | PlayerPrefs / Solutions personnalisées |
| Intelligence artificielle | ||
Machine à état pour fabriquer des états IA | StateTree | Outils tiers |
Créer des zones où les IA peuvent se déplacer | Système de navigation | Maillage de navigation |
| Animation | ||
Gérer les données d'animation | Blueprints d'animation | Contrôleur d'animation |
Créer des séquences d'animation | Éditeur de Sequencer | Timeline |
Articuler les personnages 3D | Control Rig | Outils tiers |