As you may know, Unreal Engine 5 had its first “official” (non pre-release) release last week. While there was no way to upgrade UE3 projects into UE4, since both engine versions were vastly different, UE5 builds on top of what you already had in UE4 so the upgrade path is a lot simpler. Now the question is “should you upgrade?”
The answer I’d give is “it depends.”
Right now my company has 2 projects in development, with a third one “on a small pause.” One of them is a hyper-casual game made in Unity, which should be ready soon-ish. The second one is Killer Dolls Battle Arena, made in Unreal Engine 4, and the third one is Just Let Me Go, also made in Unreal Engine 4. While I do believe both projects could benefit from the new features in the new engine, I am not simply moving the projects to the new engine.
I am not really worried about the stability of the engine. Its been out in early access mode enough time Epic Games has surely fixed a lot of the bugs, or at least the major bugs. I am mostly concerned about any possible scenario where new features in the engine break any elements in the games. Due to many experiences, I have a rule of never moving a project to a new major release of an engine, since projects break frequently. This can be catastrophic, since it takes precious time to fix those issues. For example, sometimes when I switch Unity versions, the new version has done away with features from the old version so I am forced to re-do a lot of the work. Granted this has never happened to me with Unreal, but that’s because this is the first time the engine has a major release, while Unity offers yearly major releases.
Another thing I’d consider is if I actually need any of the new features. For example, is the real time lighting system something you “need” or something that would be “good to have”? For example, one of the gameplay elements in Just Let Me Go involves lights for some stealth mechanics: you can turn off lights anywhere in the house so you can use the darkness to make yourself harder to spot. This is a gameplay feature that would definitely benefit from the real time lights offered by Lumen, since the environment would update according to the lights’ state in a very natural way. On the other hand, lighting is not really a gameplay mechanic in Killer Dolls Battle Arena. Also, Nanite can be extremely helpful in bringing the house in Just Let Me Go to life, since it can render larger worlds, or worlds with more detail, very efficiently. Nanite combined with level streaming could make a great combination for managing all the parts of the house (specially since the protagonist’s soul can go through walls to move between rooms, meaning I need to have more than one room loaded at all times, on top of a persistent world showing the house’s exterior). However, in Killer Dolls Battle Arena, the arenas are small and they don’t have tons of details. Most of the polygons are devoted to the tons of characters shown on the screen, and Nanite doesn’t work with skeletal meshes (the Elemental demo is actually a character made of static meshes, and that’s why Nanite works in that case).
Of course, it is very tempting to just jump into the new version of your engine. However, you can never rush these kinds of decisions. Personally, I plan to move Just Let Me Go to UE5, since I see the new version offers some good benefits to the game, specially thanks to Nanite and Lumen. However, another factor I am taking into consideration is the launch date. I don’t really have a launch date for that game, since it’s still in development and the release is at least one year away, if not more. However, I am keeping Killer Dolls Battle Arena as an Unreal Engine 4 project since the release date is potentially closer, and I don’t think the game would benefit from the new features in the engine.
Get Unreal Engine 5: https://www.unrealengine.com/en-US/