Hello hello,
a few days ago I switched to unreal 5.3 to use the new landscape nanite displacement. Now after enabling the displacement the landscape was raised and lowered at some spots which is why foliage and certain assets are floating now. When disabling nanite in the landscape settings it goes back to normal. Now I am hoping for someone to tell me this is just a bug and easily fixable and not having to redo all foliage and asset placements in the level. Im relatively new to unreal so I dont know all the info you might need to get an idea of what might be the issue. But any tips so far?
I havent the faintest, but look into how the displacement works.
If you are automatically outputting a value of 0 via the material, then it is possible that the height (probably calculated some way or another by multipling into vertex normal) is going in the negative, so to speak.
How can multiplication of something to a vetex normal end up with a negative result you ask?
Well, thats the part we really have no clue on.
It would have to be a neagtive value to start with since vertex normals are supposed to be positive (on a landscape. Round objects will have negative values but landacapes specifically do not)
If the displacement doesn’t work off the material shader, well then I have no eartly idea of how it works.
In fact, as it is I have no idea of how they manage shifting of collisions even with the material.
Howver should the collisions actually be shifted and not only visual during the process…
You don’t really need to change foliage istances one by one manually:
Go to foliage mode, select all the instances (that used to be in the left side panel), click the UI Select Invalid button, which will select all the foliage that isnt valid (ei: not colliding).
Drag up on the Z of the gizmo a bit to make sure the instances are all away from the landacape.
Then hit the home button to have them automatically find the floor again.
Regardless of how things work, assuming displacements actually offsets collision - which is a big assumption since it literally never has, doing that should fix all your instances…
Have you tried to package your game? I wonder if you’ll have the same issue as I do