07 — Pourquoi pas Unreal Engine 5 ?

Ronan Champigny
6 min readFeb 27, 2022

--

Dans la continuité de notre exploration sur Unreal Engine, je me suis demandé si ce n’était pas le moment idéal pour essayer notre scène VR avec la nouvelle version Unreal Engine, la cinquième, encore en bêta à ce jour. Ma démarche était de comparer avec la version 4 et de constater si en l’état, le résultat pouvait être plus intéressant avec les nouvelles fonctionnalités de rendu.

Convertir un projet 💱

Quand on essaye d’ouvrir un projet de la version précédente, la bêta d’UE5 nous propose de le dupliquer pour le convertir.
Raté. J’ai essayé à de multiples reprises : quand le logiciel se lance, impossible d’ouvrir les scènes sur lesquelles je travaillais ; elles semblent tout simplement ne plus être détectées. Assez rageant de devoir recréer tout son projet ; ceci dit, le logiciel étant encore en phase de développement, je ne m’étonne pas trop.

Interface d’accueil sur UE5 🖖

Finalement la meilleure solution pour pouvoir refaire ma scène était d’ouvrir Unreal 4 et 5 en parallèle et de copier-coller bêtement les éléments dans la hiérarchie ou dans les blueprints / graph de shader.

Une interface renouvelée 🌱

Il y a plus de place au centre pour la fenêtre de visualisation 🪟

La nouvelle interface semble avoir reçu un sacré lifting entre cette nouvelle version et la précédente. Les menus assombris sont beaucoup plus épurés et minimalistes pour laisser toute la place à la fenêtre de visualisation. Si cette nouvelle interface est plus jolie à regarder, c’est aussi plus difficile de trouver ce qu’on cherche : les gros boutons textuels ont été remplacés par de petites icônes. L’expérience utilisateur va peut-être en pâtir pour le débutant : même ayant utilisé la version précédente, je dois déjà chercher un peu plus les outils.

De nouvelles technologies très prometteuses comme Nanite & Lumen 💡

Regarder cette démo, cependant n’allez pas voir Matrix 4🙏

J’ai pu voir de nombreuses démos témoignant de la puissance des dernières technos embarquées d’UE 5 ; la dernière étant celle de l’assez bluffant The Matrix Awakens en décembre.
Nanite est le nom de cette nouvelle technologie révolutionnaire de gestion des polygones 3D dans UE5. Elle permet d’afficher une grande quantité de géométrie à l’écran en la “virtualisant” en micro-polygones.

La géométrie virtualisée 🔴

Ainsi il serait possible d’importer directement dans Unreal Engine des modèles 3D de qualité cinématographique comprenant des centaines de millions ou des milliards de polygones (des sculptures ZBrush aux scans photogrammétriques), sans risquer d’abaisser les performances.

Lumen, de son côté, change aussi pas mal de choses en terme d’éclairage en temps réel. Dans UE 4.27 et jusque là, il existe 3 types de sources lumineuses qu’il fallait utiliser en fonction des contraintes :

  • La première est une source de lumière qui est calculée au début de la scène. C’est la lumière directe mais sans l’ombre.
  • La deuxième source de lumière va créer de l’ombre. Par exemple, l’ombre portée du personnage dans la scène.
  • Le troisième type de lumière, c’est la lumière dynamique réelle. La lumière peut bouger comme le personnage dans la scène.

Lumen dans UE5 est une solution d’éclairage globale, qui va supprimer les deux premiers types de source de lumière, en étant entièrement dynamique. Elle réagit immédiatement aux changements de scène et de lumière. Dans des environnements immenses et détaillés, à des échelles allant du kilomètres aux millimètres, le système fait un beau rendu visuel de l’illumination globale, que l’angle du soleil change selon l’heure de la journée ou qu’on allume une lampe de poche. Cette technologie est aussi une révolution, en termes de méthodologie de travail, mais surtout en temps de rendu de la scène à l’écran.

Rendu de Lumen dans la démo d’une grotte 💡

Les choses à savoir 🛑

Dans ma veille technologique, je me suis demandé quels étaient les avantages et les désavantages de ces nouveaux outils, s’il y en a. Il y a encore peu de documentation bien sûr, en tout cas sans devoir se farcir les gros lives d’Epic Games qui sont particulièrement techniques pour le simple designer que je suis. J’ai tout de même trouvé des vidéos Youtube qui résume bien tous ce qui est à savoir, notamment celles de William Faucher.

J’ai ainsi appris que si Nanite gère très bien tous les meshes 3D avec beaucoup de triangles à l’écran et les grandes instances de modèle, il va avoir pas mal de soucis avec les géométrie “ouvertes” comme les cheveux, les feuillages,…

Le youtubeur parle de certains cas spécifiques où il a constaté des limitations ou encore des bugs étonnants, que ce soit avec Nanite ou Lumen. Pour les bugs, la plupart pourront probablement être réglés dès que Unreal Engine 5 sortira officiellement.

Pour revenir aux anneaux ⭕

De mon côté, si j’ai regardé toutes ces informations, c’est parce que je rencontrais des difficultés avec ma scène importée dans UE5. Il s’agissait du rendu de la lumière, qui était très étrange par rapport ce qu’on obtenait dans UE4. J’ai essayé de modifier beaucoup de paramètres différents, la scène des anneaux restait hyper sombre ; et surtout pas magiquement magnifique comme dans les démos ! C’est comme si il n’y avait aucune illumination globale de la scène. Après cet échec, j’ai décidé de ne pas continuer plus longtemps avec cette scène sur UE5.

Peut-être un preset de scène mal choisi ou un paramètre mal coché ? 😑

La création d’interface

Une autre chose qui n’est pas une nouveauté mais que je n’avais pas encore essayé dans Unreal Engine: le créateur d’interface. Il est assez facile de créer un menu dans UE grâce à cet éditeur simplifié, dont on peut relier les animations aux interactions via les blueprints. Il y a même moyen de mettre facilement des animations et de poser des images-clés, à la manière d’After Effects. Ainsi j’ai fabriqué ce petit menu très simple qui permet de choisir entre 3 univers. Il y a un texte qui apparaît au hover de la souris et un effet d’opacité sur les images.

Le résultat de cette mini-initiation aux interfaces 🖱

Impossible de compiler ⛔️

L’output log qui mouline pendant plusieurs dizaine de minutes 💨

Mon dernier échec avec UE5 était l’exportation du projet. J’ai essayé, à la demande d’Alexandre, de compiler un projet pour créer un exécutable Windows. Déjà il manquait sur ma machine tous les SDK, les fameux kits de développement logiciel (j’avais aucune idée de ce que c’était), indispensable pour continuer. Tout installer m’a pris quasiment 2 heures, pour avoir tous les bons package de C+ à jour. Une fois que ça m’avait l’air bon, je lance plusieurs interminables compilations du projet, qui prennent plusieurs dizaines de minutes à calculer pour finalement tous se solder sur un message d’erreur. Et pourtant les projets sur UE4 arrivent à s’exporter correctement ! Ce fut malheureusement une grande perte de temps, ces essais m’ayant pris tout un après-midi en mobilisant ma machine…

UE5 est un beau fruit pas encore mûr 🍏

Conclusion : la nouvelle version de moteur de jeu a l’air d’être une vraie petite révolution pour le rendu en temps réel. Mais pour le moment, il est difficile de s’en servir dans un contexte professionnel tant qu’une première version officielle n’est pas achevée. Je ne connais pas non plus assez le logiciel et les aspects techniques pour pouvoir m’en servir convenablement. Finalement, avec Ed, nous avons décidé de laisser de côté la VR pour aller tester de nouvelles choses.

À très bientôt par ici 🌻

Chumpy_corp

--

--