Tips on upgrading to new engine verision
Should I upgrade to the new engine version after it's released? Is it safe to upgrade? Is it worth? Teams tend to jump to a new engine version not long after the release. Generally, Unreal Engine i...
Should I upgrade to the new engine version after it's released? Is it safe to upgrade? Is it worth?
Teams tend to jump to a new engine version not long after the release.
- Generally, Unreal Engine is a stable tech. There's no actual need for the Long Term Support version. There are no questions like "which engine version should I use when starting a project or learning the engine?" - you just get the latest version, that's it.
- Features that are not production-ready are properly marked. New systems often come labeled as "experimental" or "beta". Read an official blog post explaining Experimental, Early Access, and Beta features in Unreal Engine.
- Beta features are often used in production - they're too good to wait. Be careful, it might require some extra work around non production-ready features after upgrading the engine. And the performance might be far from ideal.
- Some experimental features are totally usable in the project. Environment Query System has been marked as experimental for years, but nobody truly knows why. It's commonly used, works fine. Perhaps the author/team initially planned more features?
- Obviously, it's always the good practice to ask online if others use a given beta/experimental feature and is it OK to use?
Tips on upgrading
- Always make sure you create a backup of your project before upgrading. This can be done using version control Or by just copying your project to another location.
- Always reserve extra time for an upgrade. Even if there would be no bugs. Encourage teammates to read Release Notes, play with new features and improvements. Simply, make most of this upgrade.
- Package the game immediately after upgrading and confirming the game works in the editor. Verify that cooking game doesn't fail and cooked game work properly.
- Check if there are no serious issues with framerate. Investigate performance problems right away.
When to upgrade?
- Never upgrade your "production project" while the new UE version is in the Preview phase. That's what Epic clearly communicates, Preview versions are meant for testing the upcoming release. Sure, try it on a copy of your project or play with systems on the fresh project made out of a template. Help find issues before the actual release.
- It might happen that you wouldn't encounter any serious bugs even if upgrading to a new engine version a day after the initial release - if your project is small (just a few people, using a small number of systems).
- However, it's strongly recommended to wait until the first patch if you're working on a pre-compiled engine downloaded from the Epic Games Launcher. There are tons of fixes - crashes and fixes for "how they could not fix this before release?" bugs. Seriously, don't hurry with the upgrade - especially if you don't have a programmer in the team that can assist with understanding and fixing issues. It takes up to a few weeks to have the first patch available.
- "Upgrade tactics" might differ if your team is a compiling engine. You already have an engine synced from Epic's repository (either GitHub or Perforce), so you can grab the latest engine version any day. When to upgrade in this situation? Well, it depends on your previous experience. If given team happened to switch to a new version a week after release and encountered serious issues, wasted time on it... the next time they wait a month, critical fixes would be most likely fixed.
- You might consider an early upgrade if you really need new systems and features to progress the development of your project AND you're far away from game release. Dealing with eventual issues would be acceptable.
- Never upgrade the engine a few weeks before releasing the game/project. It's too risky. If a new engine version would introduce a critical issue, you might not even notice it. Or you might be unable to fix it if you're not using source builds. That's one of the main reasons for the compiling engine yourself - you can fix any critical issue in the engine any time, even a day before releasing the game. Or in the first few days after the release when most of the critical issues are reported by gamers.