Game Development | Upgrading To A Newer Unreal Engine Version

in Game Development3 months ago

Upgrading To A Newer Unreal Engine Version.jpg

What some game developers fear is upgrading the game engine version they are using in the game they are working on. This is something I’ve put off doing for quite some time as I did not want to end up in an endless cycle of upgrading, fixing, upgrading, fixing, and so forth. It was however time I felt.

With working on this game since January first, 2020, there have been a few engine updates. I also did not start with the latest version at the time when I did. I went with what worked for everything that I wanted to use. I was not sure I was going to even try a newer version.

The process itself is quite easy to do but hard to get right. Make a backup in case things go wrong. Download a version of UE4 (Unreal Engine 4) that you wanted to use. In my case, it happens to be 4.26.1. That version itself had a couple of bug fixes and has been out for a little while now. Then you just open up your project in the newer version and scream at the horror.

Ok, so it was not so much screaming as going “what all broke” knowing full well things were going to break. Then make a list and see what all is worth trying to fix now and what I have plans on my roadmap for doing a major rework or starting from scratch again.

There were also a lot of recompiling shaders. I had maybe around a day I was opening up zones and allowing the shaders to be compiled. I’d check in every half an hour or an hour later to see if it was done move onto the next one.

UV channel.png

There were quite a few issues that popped up. Everything from tooltips breaking and displaying as blank when the player hovered over an item to things just not working at all. Along with a few zones having lighting issues due to some meshes having UV channel overlapping issues. Something I had fixed once before that is now naturally an issue again.

I had a couple of reasons for wanting to do this upgrade now at the stage of development I’m in. I soon will be in the process of redoing the inventory system, class overhauls, questing overall, and well working on a lot of things.

Many of these things worked enough for the early stages of development. Most however did not work well together or I’m just not happy with the current state they are in after being over a year into this project now.

There were also some nice improvements to the UE4 engine itself since I started. Some of the things that are expected to be in UE5 (Unreal Engine 5) have made their way into UE4. Many of them providing performance enhancements for things like particles and lighting.

Lighting was also a big factor in wanting to make this upgrade. I have uncounted months of computing time ahead of me in needing to build lighting at a higher resolution. That is just the price you end up paying when you have 25 zones and some of them are quite massive.

GPU Render.png

The newer UE4 version has GPU-based light baking. This dramatically reduces the time it takes to build lighting. Just one small issue it uses ray tracing. It’s a bit shameful to admit as a gamer I don’t have a graphics card that supports ray tracing at the moment. So I can’t take advantage of this yet.

I’ve been a bit overdue in needing to build a new computer. With the struggles, the past several years have been in acquiring GPUs, ram shortages, and other global stuff going on. My computer is kind of getting old. By the end of this year or the start of the next, I’m going to need to upgrade. I also have the excuses that I need more pooowwwer for game development.

Many have also asked when I’m upgrading to UE5 or why I just did not build using UE5 instead. The fact of the matter is that not available to someone like me as of it. Last I looked into it it’s not expected till the end of 2021 anyways.

UE5 also is supposed to no longer need a light building per zone. Which to someone like me that be many months in time-saving having 25 zones. Not to mention many other enhancements and expected performance boosts.

The question you might be wondering then is why am I now upgrading to 4.26.1 if I could be making a major upgrade at the end of the year? In theory, this should now give me an upgrade path to it if I choose to do it.

While it’s not quite known yet what version of UE4 Unreal is expecting to use that will be “easy” to convert over to UE5. It’s been known that they want to make it as “painless” as possible to try and get as many projects over to UE5 at some point. At least now I’ll be closer to being able to do that if I choose.

Final Thoughts

swarm agent for light build.png

While it’s a bit of a gamble now upgrading without knowing more or even being sure I’ll upgrade to UE5 anyways. It happens to match up with my roadmap that if I was going to upgrade to a newer version now is the time. Even more so since I’m ahead of schedule anyway and I’m still trying to learn a lot for future stuff.

Upgrading to a newer game engine tends to be the major factor to why so many projects fail to launch on time. It’s not like I am a triple-A studio with a render farm to crunch the lighting for 25 zones beyond the quick preview build I’ve done for most. Despite not being able to use the new GPU render as of yet the standard method that is CPU heavy I’ve noticed is quicker in the newer engine. Either way, the possible time savings outweigh the time it should cost to fix what has broken and move forward.

Other Posts:

Information

Screenshots were taken and content was written by @Enjar. Screenshots are from Unreal Engine 4.

Game roadmap.

Sort:  

i feel the pain needing a machine upgrade - my laptop can only run easy stuff like minecraft - anything heavier and it just overheats and shuts down

it makes trying to learn 3d programming a little harder , that's for sure

i'm just doing the basics right now so i am looking at ECS to get a better handle on that - plenty of 2d stuff i can work on for learning till i win the lottery to upgrade LOL

I just need some bags to moon and than I can get something fancy hehe.

I have not done much with 2D. I'm tempting to start a little side project to mess around with it though.

I've been reading this - https://natureofcode.com/book/index

more for the last 3 chapters on AI/machine learning - but it has great code examples

and trying to learn ECS (https://github.com/ecsyjs/ecsy)

i hear there is a couple cool ECS things for unity - it might help with your project - i read your working on crafting system - just something to ponder

i figure if i can't do the AWESOME 3d stuff right now - at least i can get a grasp of the fundamentals - i can barely move a ball(or 100) across the screen at this point, next step is get some controls working ;)

For what it's worth, I don't have a raytracing capable card either. It's interesting that you can't just automatically bake all your project shaders in UE, though I suppose there's a benefit to having it be per-scene.

The GPU option with ray tracing had some interesting options from the looks of it. Could bake just what you are looking at and not everything.

UE5 is suppose resolve the whole needing to do it at all. Will be interesting to see how truthful that is and what gets passed down to UE4.

Coming from 20 years in the software industry, I have an incredible respect for the insane number of moving parts a developer has to contend with. APIs break, shareholders are frothing for the next release, consumers need it stable and now, and the floor you are standing on is constantly shifting.

The only way I could upgrade my GPU is to buy it with a computer wrapped around it. So I am ready for beta testing duties!

Love seeing your perspective and watching this come together!

You guys had a floor to stand on? Hehe.

Every day I learn something new and add another needed moving part to an ever growing matrix of madness.

Thankfully I don’t have shareholders. I don’t think they would last with how long this is going to take me.

If Hive keeps pumping a little each week like it has been I have a feeling quite a few gamers will be buying new computers.

They will have to get creative in order to keep up with the miners. I am both so I have my next generation of gaming machine sitting right next to my present one mining ETH while I mine $Hive on this one. :)

Nice :)
!BEER

Thanks.


Hey @enjar, here is a little bit of BEER from @dksart for you. Enjoy it!

Learn how to earn FREE BEER each day by staking your BEER.