ACTU
Unreal passe la sixième
par CBL,
email @CBL_Factor
Il y a trois semaines, Epic Games et Psyonix montraient une vidéo de la future nouvelle version de Rocket Leage avec une petite surprise à la fin : le jeu va tourner sur Unreal Engine 6. Après tout Unreal 5 a fêté les 6 ans de son annonce le mois dernier mais on a l'impression que c'était hier probablement car le moteur souffre toujours de gros problèmes et vient juste de passer en 5.8 alors que la version finale d'UE4 était la 4.27.
La présentation officielle de l'UE 6 a eu lieu cette semaine à Chicago durant l'Unreal Fest et on doit dire qu'on est assez surpris. D'habitude quand Epic annonce une nouvelle version de son moteur ils sortent une grosse démo accompagnée d'une orgie de termes techniques mais là rien. Juste une vision du futur. Dans un sens c'est assez raffraichissant mais dans un autre c'est assez flou. On note aussi que l'annonce du nouveau moteur n'est pas liée à l'annonce d'une nouvelle génération de consoles. Alors UE 6 c'est quoi ?
Le but principal d'Unreal 6 est d'unifier les deux versions du moteur : celle pour les développeurs de jeux et celle pour les développeurs d'îles Fortnite (Unreal Editor For Fortnite). La vision pour l'UE 6 est un moteur/éditeur unique qui permet de sortir des jeux sur PC (Steam, EGS...), consoles, mobile et Fortnite. Le tout passe par un langage unique. Dans un moteur du jeu, il y a souvent deux langages de programmation : un langage natif (en général C++) qui sert à programmer le moteur en lui-même, des plugins et/ou des choses lourdes complexes et un langage de script qui sert à itérer rapidement et à programmer des choses comme l'IA, l'interface ou des éléments de gameplay.
UE4 et UE5 utilisaient les Blueprints comme langage de script. C'est un langage visuel à base de noeuds à relier. C'est mignon mais c'est un enfer à versionner et surtout c'est totalement inadapté aux agents de code comme Claude ou Codex très à la mode en ce moment. Pour UE 6, Epic Games va progressivement abandonner les Blueprints au profit de Verse, un langage propriétaire créé par Epic Games à l'époque où les gens parlaient de métavers et le langage de script de l'UEFN. En clair, Epic Games va demander aux développeurs d'abandonner un langage à usage unique pour adopter une autre langage à usage unique à la communauté quasi-inexistante à la place de partir sur un des nombreux langages de script utilisés par le reste de l'industrie : TypeScript, JavaScript, Lua, C#, Python, Swift...
Accessoirement, dans UE 6, la programmation avec Verse reposera sur le principe de mémoire transactionnelle logicielle, un paradigme de code super casse-gueule et compris uniquement par une poignée de codeurs. Pourtant Verse restera mono-thread ce qui était un des gros problèmes des Blueprints mais Epic explique qu'on peut distribuer le code sur plusieurs serveurs afin de paralléliser le tout.
Au delà de Verse, il est question de portabilité et d'interopérabilité. UE6 utilisera en priorités des standards comme glTF (Khronos Group) et USD (Apple/Pixar) pour les modèles 3D (et abandonner les UASSETS ?). Epic Games annonce aussi ouvrir les systèmes qu'ils crééront en publiant les specs et en documentant les API. Si vous connaissez la doc officielle d'UE5, vous devez bien rigoler. Le but est de créer des choses portables d'un moteur à l'autre voir d'un studio à l'autre. Epic Games annonce par exemple que les habillages de Fortnite pourront fonctionner en dehors de Fortnite. Il y a aussi tout plein de bla bla sur l'intégration avec les modèles d'IA.
La première beta de l'Unreal Engine 6 sortira fin 2027 avec une 6.0 12 à 18 mois plus tard. la version 5.8 de l'UE5 sera potentiellement la dernière même si Epic Games se réserve la possibilité de sortir une 5.9. L'autre grosse surprise du jour est l'annonce et la sortie de Lore, un nouveau système de versionning totalement gratuit et open source. Les développeurs de jeu utilisent généralement Perforce (qui est payant), un système qui est capable de versionner des gros fichiers (textures, modèles 3D...) contrairement à Git qui doit utiliser un système un peu batard appelé LFS pour faire l'équivalent. Le but de Lore est de remplacer Perforce et on souhaite bon courage aux développeurs qui vont essyer les platres.
La présentation officielle de l'UE 6 a eu lieu cette semaine à Chicago durant l'Unreal Fest et on doit dire qu'on est assez surpris. D'habitude quand Epic annonce une nouvelle version de son moteur ils sortent une grosse démo accompagnée d'une orgie de termes techniques mais là rien. Juste une vision du futur. Dans un sens c'est assez raffraichissant mais dans un autre c'est assez flou. On note aussi que l'annonce du nouveau moteur n'est pas liée à l'annonce d'une nouvelle génération de consoles. Alors UE 6 c'est quoi ?
Le but principal d'Unreal 6 est d'unifier les deux versions du moteur : celle pour les développeurs de jeux et celle pour les développeurs d'îles Fortnite (Unreal Editor For Fortnite). La vision pour l'UE 6 est un moteur/éditeur unique qui permet de sortir des jeux sur PC (Steam, EGS...), consoles, mobile et Fortnite. Le tout passe par un langage unique. Dans un moteur du jeu, il y a souvent deux langages de programmation : un langage natif (en général C++) qui sert à programmer le moteur en lui-même, des plugins et/ou des choses lourdes complexes et un langage de script qui sert à itérer rapidement et à programmer des choses comme l'IA, l'interface ou des éléments de gameplay.
UE4 et UE5 utilisaient les Blueprints comme langage de script. C'est un langage visuel à base de noeuds à relier. C'est mignon mais c'est un enfer à versionner et surtout c'est totalement inadapté aux agents de code comme Claude ou Codex très à la mode en ce moment. Pour UE 6, Epic Games va progressivement abandonner les Blueprints au profit de Verse, un langage propriétaire créé par Epic Games à l'époque où les gens parlaient de métavers et le langage de script de l'UEFN. En clair, Epic Games va demander aux développeurs d'abandonner un langage à usage unique pour adopter une autre langage à usage unique à la communauté quasi-inexistante à la place de partir sur un des nombreux langages de script utilisés par le reste de l'industrie : TypeScript, JavaScript, Lua, C#, Python, Swift...
Accessoirement, dans UE 6, la programmation avec Verse reposera sur le principe de mémoire transactionnelle logicielle, un paradigme de code super casse-gueule et compris uniquement par une poignée de codeurs. Pourtant Verse restera mono-thread ce qui était un des gros problèmes des Blueprints mais Epic explique qu'on peut distribuer le code sur plusieurs serveurs afin de paralléliser le tout.
Au delà de Verse, il est question de portabilité et d'interopérabilité. UE6 utilisera en priorités des standards comme glTF (Khronos Group) et USD (Apple/Pixar) pour les modèles 3D (et abandonner les UASSETS ?). Epic Games annonce aussi ouvrir les systèmes qu'ils crééront en publiant les specs et en documentant les API. Si vous connaissez la doc officielle d'UE5, vous devez bien rigoler. Le but est de créer des choses portables d'un moteur à l'autre voir d'un studio à l'autre. Epic Games annonce par exemple que les habillages de Fortnite pourront fonctionner en dehors de Fortnite. Il y a aussi tout plein de bla bla sur l'intégration avec les modèles d'IA.
La première beta de l'Unreal Engine 6 sortira fin 2027 avec une 6.0 12 à 18 mois plus tard. la version 5.8 de l'UE5 sera potentiellement la dernière même si Epic Games se réserve la possibilité de sortir une 5.9. L'autre grosse surprise du jour est l'annonce et la sortie de Lore, un nouveau système de versionning totalement gratuit et open source. Les développeurs de jeu utilisent généralement Perforce (qui est payant), un système qui est capable de versionner des gros fichiers (textures, modèles 3D...) contrairement à Git qui doit utiliser un système un peu batard appelé LFS pour faire l'équivalent. Le but de Lore est de remplacer Perforce et on souhaite bon courage aux développeurs qui vont essyer les platres.