Description

LandscapeSplineActors and LandscapeSplineMeshesActors are not behaving as expected in 5.4 or 5.5.

Testing in 5.4 the issue mostly seems to stem from issues with the Target Landscape -> Landscape Actor property resolving properly when loading the landscape spline actor. If you enable verbose LogLinker logging and PIE in a world where you have landscape splines and have build landscape splines you may see errors like (you can repro this with the repro project):

```
LogLinker: Verbose: Failed to resolve import '7' named 'Landscape_UAID_047C16E6C0E0236A02_1363678591' in 'Level /Game/SplineTest.SplineTest:PersistentLevel'
LogLinker: Verbose: Failed to resolve import '11' named '/Game/{}ExternalActors{}/SplineTest/3/D3/5K851KTWFCP63JN8M41QXG' in 'Package /Memory/UEDPIE_0_EEACHOUQB9H3CUA5K5H6XO42I_InstanceOf/Game/ExternalActors_/SplineTest/7/TX/MXWAEZRCC6UYDCDS6PSTCB'
LogLinker: Verbose: Failed to resolve import '7' named 'Landscape_UAID_047C16E6C0E0236A02_1363678591' in 'Level /Game/SplineTest.SplineTest:PersistentLevel'
```

This failed import causes the Landscape Actor property to be null on the LandscapeSplineActor- which causes `ALandscapeSplineActor::HasGeneratedLandscapeSplineMeshesActors` to start failing to function- causing most of the systems built to hide these source actors to fall apart.

This issue is causing:

1.) Both the original LandscapeSplineActor and generated LandscapeSplineMeshesActors are present during PIE.
2.) Both sets of actors are generating into HLODs.
3.) Both sets of actors are present in packaged games.

Steps to Reproduce

The attached repro project has a map setup as the repro steps are going to describe already with splines and HLODs already built. Ignore the fact that the spline in the instance HLODs is busted (this is a separate issue and the licensee has made their own HLOD builder to create splines in the instance layer- their problem is that their builder is also building both landscape spline actors into the instancing layer as well since the builder at a fundamental level isn't excluding the LandscapeSplineActors).

1.) Create a new open world map.
2.) Add a landscape to the map and make it nanite
3.) Add a landscape spline to the map and give it a nanite mesh (will help testing later)
4.) Build Landscape Spline Meshes
5.) PIE, enable 'r.Nanite.Visualize Instances'
6.) Notice flickering on the landscape spline- this is because both the LandscapeSplineActor and the generated LandscapeSplineMeshesActors are visible at the same time.
7.) Quit PIE, build HLODs on the map (the default HLOD setup is fine as long as your spline is big enough)
8.) Pin the generated instanced HLODs and notice similar flickering using the nanite instances view in editor, this is because both the LandscapeSplineActor and LandscapeSplineMeshesActors generated into the HLODs.
9.) Package the game in development config and run it.

Observe: With the nanite instances view you still see flickering even in the packaged build- this is from both LandscapeSplineActors and LandscapeSplineMeshesActors being visible.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-291731 in the post.

0
Login to Vote

Unresolved
CreatedMay 30, 2025
UpdatedJun 4, 2025
View Jira Issue