Optimization for a heavy foliage game

Hi all!
I’m in the first parts of QA for my demo game right now. It looks gorgeous and I’m very proud of it, and on my machine (Ryzen 7 3700X, 3080Ti) it runs smoothly and on the tutorial map is easily around 50-60fps, and then on the foliage heavy tropical island map, it’s hovering around 30-38fps. That’s just with the Quinn mannequin.
I built everything in UE 5.0.3 and Nanite/Lumen are key elements of how it’s intended to look.
I took a copy to my husband’s machine for him to bugtest on (Ryzen 5600X, 1660Ti), and he was getting about 28-31 fps in the tutorial level and barely 2.8-3 fps on the tropical island.
I’ve adjusted my textures, I’ve lowered the Scene View distance and Max Trace distance on Lumen, I’ve removed cast shadow on everything that isn’t helping matters, I’ve merged static meshes, made sure they stayed static, I have level streaming and light importance volumes, and I’m hitting a bit of a wall on how to make this game run on a system with his approximate specs.
It’s meant to be played with MetaHuman characters, which I find drops my fps by 5-10 fps even with low quality MetaHumans and every texture I can reduce reduced.
We haven’t even tried it on his machine with the actual player character.
Should I upgrade the project to 5.1 and hope that the improvements to Nanite and Lumen help to address this?
Should I just accept that this game won’t run on a graphics card of his spec?
Should I look into building it with Pixel Streaming so people on entry level systems can play it?
I could really do with some advice.

If you are using the UE foliage system I believe 5.1 included some optimizations for that.

Have you profiled the game to see what is slowing things down?

1 Like

You even mentioning FPS means you don’t know much of anything about optimization.
Given that, there’s proabably a thoudand things experience can teach you to get better performance…

The tip on using the new engine version isn’t bad. They did indeed allow foliage and nanite to work together. Wouldn’t call it great, but it is an improvement.

For the rest, just follow any oprimization guide. Once you are done with one, find and follow another. It takes 4 or 5 different iterations before you get anywhere.

For the foliage itself, there is probably also a billion things you could do to reduce the load on the model side and on the material side unless you made your own models and you knew what you were doing.

For starters, you probably want to enable early z pass for masked materials, because unless you have a billion drawcalls your performance is already really “epic” bad…

I would also add to check that the foliage material mode is set to masked and not translucent.

Opacity sorting for many translucent objects can tank performance. Masked don’t have this extra cost to such an extent.

1 Like

Thanks all! I will go for each of these steps. This is my first game, so I fully agree I’m new to this whole thing. I went with worries about fps because I wanted to know why it was effectively unplayable on my husband’s system. I’ll do the Timing Insights thing for sure - thank you!
Going to copy the project to 5.1 and see if that improves matters also.