Inconsistent LOD behavior on Foliage and Grass

Hi guys.

I’m trying to migrate a project from 4.14 to 4.16 (tried to 4.15 too and got the same issue). On 4.14, screen size parameter on static mesh LOD settings has the same behavior both for single static mesh actors or foliage painted instances.

Now on 4.16 (and 4.15), that same parameter with same values causes the LOD transitions to behave differently (different distances) when the meshes are single static mesh actors or foliage instances. Plus when it’s a foliage instance, I can’t control LOD 0 distance within a given distance from camera. No matter what screen size value higher than 0,5 I set for LOD 1, it won’t change to LOD 0 closer than ~15m from camera (while the single static mesh actors keep working just fine).

I created all my foliage during the last years with LOD 0 optimized for close distances from camera (nothing more than a couple of meters) because I need high fidelity foliage and also reasonable performance. Now all my high dense foliage projects are taking a huge performance hit on 4.15 and 4.16 compared to older UE4 versions because of that strange LOD behavior on foliage and grass instances.

Ps. I’ve also tried that on a clean project from scratch to make sure it wasn’t a content migration bug. And the issue persists like shown on the screenshots bellow (the static mesh used is a default “desktop backyard grass” SpeedTree asset).

4.14 - static mesh actors on the left - painted foliage instances on the right

4.16 - static mesh actors on the left - painted foliage instances on the right

Notice how LOD 0 instances keep the same on the right even with LOD 1 screen size changing from 0,5 to 0,9