A lot of the time spent in this project was used to make the massive amount of assets
exported through the wow.export tool work with Unreal Engine 5. While I was able to export the WoW landscape
in chunks, with all their corresponding static meshes (except foliage) I could not do it in one go. With Blender
as an intermediary between wow.export and Unreal Engine I started importing about 100 landscape chunks (of 1.500 chunks total)
at a time into Unreal Engine. This led to a lot of duplicate static meshes, on top of the already high amount of duplicates.
Another problem was that every single static mesh was imported with a default material with roughness set to 0.5 leading to
the world looking like it was made out of rubber. To automate fixing these problems and more I built an Editor Utility, which
removed the duplicates, let me create Material Instances from the Master Materials I created and saved me at least weeks of work.
All the while and mostly during importing downtimes I created new models for the Crossroads area using mostly kitbashing. I tried to conserve
the look of the original models as best I could while smoothing out hard low poly sections or even remaking them. For details I took inspiration
from the beautiful (if dated) textures and kitbashed or built models from the details in them to give everything more depth.
Using textures from newer WoW expansions worked pretty well sometimes but more often than not there was a clear style clash which I wanted to avoid,
so instead I tried to AI upscale the textures. I also wanted to add more depth and at first used Photoshop to create normal and height maps, until later when I found a neat tool called
Materialize which could create full PBR Materials from a single diffuse texture. However, as this was a time consuming manual process I only
created PBR textures for the Crossroads area.
One massive upside of using Unreal Engine 5 was its new World Partition feature which I made use of to support the huge map that is the World Of Warcraft.
Sadly though I ran into a lot of annoying problems which were made worse because of the very scarce UE5 documentation. HLODs (hierarchical level of detail)
are still not working properly which severely sours looking from atop mountains down the valleys below. It's also the reason
for the pop-in issues in some shots. Unfortunately, as far as I can tell HLODs are broken for many people,
which is why I stopped trying to fix them and I am instead waiting for an engine update.
Unreal Engine's Lumen system made creating the lighting a blast. I put a lot of time into tweaking the lighting, post processing effects and especially volumetric fog,
to get something that is both cinematic looking but still playable. This is also why there is no depth of field or motion blur during gameplay. There
were some caveats though. Using Lumen with a day/night cycle, as well as frequently going from indoors to outdoors areas, makes it really challenging to achieve all-around well looking
lighting that also feels good to play in. In the end I opted for deactivating AutoExposure, even though it can help make the lighting look especially cinematic
during all times of day, to get a more playable game.




