UE4 Technical Update.

We’re pleased to announce that we have just completed an engine upgrade from Unreal Engine 4.13.2 to UE 4.14.3, which is the latest patch for the 4.14 version of the engine available.  Given that Epic currently has released 4.15, some of our supporters have asked us why we don’t keep up, and develop Ship of Heroes in the most current engine version?

Each new version of the Unreal Engine contains powerful improvements.  But at Ship of Heroes, we like to deliberately stay one version behind the latest, so that we know the version we are using is completely stable.  We’re a small team, and any time spent figuring out the quirks of the newest engine improvements is time taken away from game development.  So we let bigger teams test the latest features, and when they’re finished, we move forward.  In strategic terms, we are “fast followers” for engine upgrades.

The move from 4.13.2 to 4.14.3 is significant in several ways.  To a quote from Epic Games, the guys who develop the Unreal Engine: “This release includes hundreds of updates from Epic and 71 improvements submitted by the incredible community of Unreal Engine developers on GitHub!”

What does this mean for the Ship of Heroes team?  Well, we’d like to highlight one particularly helpful new feature: in 4.14, Epic has added a tool which enables developers to generate lower level of detail (LOD) variations for static meshes with a few clicks.  It sounds simple, but this is a big time-saver for artists who no longer have to spend time creating those lower-detail LODs manually. They can spend their time making the world of Ship of Heroes grow faster by adding new content instead. Furthermore, the proper use of lower detail models when players are too far away for the details to make any visual difference improves performance dramatically – it’s a crucial step for any game doing big raids or team missions.

Changing LODs can be illustrated in a practical way in Ship of Heroes.  We chose to illustrate the automated LOD creation that UE 4.14.3 provides using one of the buildings from downtown Apotheosis City.  This particular building has approximately 36,700 vertices in its base LOD. The base LOD is what we initially import into the engine; it’s the model at its highest polygon count. Higher polygon counts look better up close, but can impact performance. As a player moves away from a building, the polygon count can be reduced because the player can’t visually see all the polygons from far away that they were able to see up close. This is the purpose of changing a models level of detail (LOD).

Creating LODs manually can take a lot of time, so having the capability to automate the generation of multiple LODs for static meshes speeds up development. There are many buildings in Apotheosis City, and there are many other objects throughout the game on which LODs can be used to improve the overall performance.

Look at the three side-by-side versions of the same building.  The difference is not primarily in the picture quality (as you can see, they are all very similar), it is in the polygon count that is required to render the building.  The lower the polygon count, the less the game lags in real play conditions.

On the left is the original building.  In the middle is the building with the vertex count reduced by half.  And on the right the vertex count has been reduced by half a second time.  There’s no real difference in quality at this range, and the higher vertex counts reappear as a player gets closer to the building.

Most game engines have weaknesses, but Epic’s Unreal Engine is very strong in all areas of development.  Even so, it is important for the development team to know what features they need to have to create the kind of game they are working on.  In our case, for making a new MMORPG, the feature improvements from 4.14.3 are quite significant.  We’re glad we upgraded, and we hope you will be too.