CRITICAL - LODs in game do not reflect what we adjusted in Engine and appear EXTREMELY low quality.

Hey! Of course.
Starting from one of the biggest issues we’ve encountered with Nanite is with our custom ocean, we have a fully custom water shader (which does not work with Nanite due to 1.- its incompatibility with SingleLayerWater and 2.- due to a crash related to SingleLayerWater and Nanite) that we created with manually built LODs that allow us to easily simulate Ocean “physics” that we have been unable to replicate with Nanite.

We’re using a mesh that has around 95k vertices but due to how many we have distributed around the map, Nanite creates seams between them due to it being Cluster based that we don’t have much control over. The reason why we decided to use LODs for this is so we could only remove detail (vertices) anywhere away from the seams, which allows us to have a perfectly seamless ocean that hardly ever affected performance regardless of its poly density. Going from 95k vertices, to 1.6k on Screen Size 0,5.

One of the only solutions that we have is having a multi-million poly plane, a singular one that covers the whole world (around 5sq-km) which is not really optimal.

Apart from this, we have a bunch of foliage that looks “wrinkly” due to the Cluster Distribution used by Nanite, now, I know that we can tweak this but it doesn’t feel as controllable as LODs are, where we just set a Screen Size and a percentage that looks good and we don’t need to worry about it anymore.

We are also using a lot of translucency which is not great with Nanite.

And finally we kind of don’t want Nanite on our Skybox?

So basically and generally speaking, we feel like we should have control over what method we use to properly optimize our assets, even more, now that it is in our hands and not in Epic’s, whereas Nanite being forced means we have little control.
We feel like Nanite is not suitable for every situation where LODs can be used.

Question for you, how would we make a performance friendly ocean mesh that has WPO capabilities for simulating water (waves), that spans 5sq-km, using Nanite (inside UEFN)? Really curious if there’s a better way to do it!

We don’t understand why a future where both are available is not considered.

We are willing to jump on a quick call whenever you are free if you’d like to discuss this further and why we chose this path and the technical issues behind it, and also to see the problems we are facing with Nanite on this specific scenario, if that’s something that interests you, please let us know!

Thank you!

2 Likes