Nanite Performance is Not Better than Overdraw Focused LODs [TEST RESULTS]. Epic's Documentation is Dangering Optimization.

(post deleted by author)

It takes devs a while to transition to new methodologies. There’s a reason why assets that actually use nanite properly are supposed to be tagged, but I think people are using the tag/description when they only turn on the Nanite boolean. Without reviews you can’t really combat this, so yeah it sucks. Fab is garbage in its current state.

1 Like

(post deleted by author)

Don’t test FPS inside the editor. Package your game and then test. Editor readouts are unreliable. I was getting 45 fps for my project in editor and 240 in a packaged game.

2 Likes

(post deleted by author)

Standalone is still running with the editor in the background. You will not get accurate framerates until you do a full package of your project and run it after a fresh reboot of your computer. As I said, the difference can be wild. 45 - 240 fps is a HUGE difference. Until you package the game and see if your FPS is still low, don’t bother with the reading you see in the editor even if you run stand-alone.

There’s also a lot more to performance issues than just nanite. How do you know that nanite is causing your slowdown? Do you have virtual shadow maps enabled? What shader model are you running? Is your model dense enough for nanite to make a difference or did you just turn on nanite for a standard low-poly mesh?

4 Likes

(post deleted by author)

You should use World Position Offset Disable Distance for your tress because in this moment, the virtual shadow on your scene is calculated every frame because of WPO. Also, the nanite trees are instances, no?

PS: I ran some performance tests using World Position Offset Disable Distance in a scene using Lumen and VSM. Even with heavily forced LODs (which clearly don’t look as good as Nanite meshes), you can still gain performance by using Nanite combined with world position offset disabled. The biggest challenge when working with Nanite and VSM is handling meshes that rely on WPO effects. If your world consists entirely of trees using WPO effect, then sure, using Nanite might not be the best approach. However, it’s not accurate to conclude, as stated in your video, that “Nanite can’t handle open-world games.” Try creating a city scene instead, and you might find yourself saying, “As you can see, LODs can’t handle open-world games.”

1 Like

From the beggining OP is constantly doing wrong comparisons using Nanite incorrectly and using only edge cases scenarios that are never actually used in real world uses cases of Nanite.
This whole topic is mostly missinformations.

2 Likes

(post deleted by author)

I removed content if you read this. Excuse me you need to find a your way how to deliver performant large scale enviroment.

for LODS use Hardware RT shadows, that overwrite VSMs and looks similiar. Nanite with Lumen+VSM and some effects cause flickers on lower screenspace settings.

Raytracing shadows have limitations too, such as shadow distance. It depends on your game’s needs, in specific scenarios (like when all models have WPO enabled), using LODs instead of Nanite might be a better choice, as I mentioned before.
Each workflow has drawbacks, Nanite/LODs, VSM/Ray Tracing, Lumen/Baked Light. As a developer, you should choose the best workflow for your specific game.

Also you didnot tell what are settings for LODS since its crucial with managing triangles and also you should remake wind on LOD.

I tried to be fair and try to match the nanite scene, even if I couldn’t with a system of 5 LODs. I’m not sure what you mean by “remake wind on LODs.” The “wind” effect is a material feature using World Position Offset (WPO), which allows the vertices of a mesh to be manipulated in world space through the material shader. The LODs will still have this effect having the same materials if you didn’t change them per LOD.

1 Like

(post deleted by author)

Yes, you can do that, but increasing the radius too much will hurt performance. It’s still better than before, as they’ve made significant performance improvements for ray tracing in 5.4+. Also, keep in mind that these commands will also impact RT Reflection and HWRT Lumen.
In my tests, even with a larger culling radius and LODs, it still doesn’t match the VSM distance with Nanite. And like you mentioned, the shadow tends to pop in at a distance.

I tested this a few months ago, and it doesn’t work that way. It will still be calculated. It’s similar to a light source with low intensity, you won’t see it, but it will still calculate the shadow it casts. This is actually why they implemented the “World Position Offset Disable Distance” for each actor.

1 Like

IDK, but just look at this post, a guy used Nanite with landscape nanite HLOD and it improved his performances by a lot :

(post deleted by author)

I don’t think that with such a flat landscape with almost no static meshes and other stuff to render you can reach the threshold where Nanite become more performant to render the whole scene.
Just look at the video a few post above that TorQueMoD posted, the title is a bit clickbait but the content is interesting. He compared classic trees and bushes with masked materials and LODs vs everything 3D for trees and bushes with Nanite and not only it looks a lot better but it also performs a lot better. You can even render grass with greater distances without destroying performances unlike non-nanite and masked materials.

(post deleted by author)

(post deleted by author)

I don’t know what you are talking about he is using exactly same windows size for the comparison this is one of the fairest comparison that someone have ever done and he is going from 35 to 50 fps in the village with as optimised as possible trees and foliage for each scenarios (masked materials and LODs for non-nanite and full 3D for Nanite). And the trees looks miles better on the Nanite version. you said the grass looks to thin, to me even the grass looks better too with the Nanite version. He was curious himself for his game and did the full real world scenario comparison.
It’s crazy how some people here can say that they’re right even when there’s undeniable evidence that they’re wrong.