With InstancedStaticMeshComponent, after calling AddInstance, an instance that’s far away gets culled because of additional logic that was added in 5.7 to This works correctly in 5.6 and the instance isn't culled . NavMesh bounds are updated first. At that moment, the other types of bounds are still valid, so those other bounds get used to directly update the NavMesh bounds. After that, *InvalidateCachedBounds *is called to mark all bounds as invalid. However, because we had just updated the NavMesh bounds, they’re immediately considered valid again.
When the other bounds are recalculated, since the NavMesh bounds are valid, they use the NavMesh bounds to refresh all bounds.
As a result, after AddInstance, all bounds end up being the old bounds—effectively as if bounds were never recomputed.
*Expected *
The instance culling behavior is the same as 5.6 (not culled)
Actual
The instance culling behavior has changed in 5.7 (object is culled)
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-356359 in the post.
| 0 |
| Component | UE - AI - Navigation |
|---|---|
| Affects Versions | 5.7 |
| Target Fix | 5.7.2 |
| Created | Dec 2, 2025 |
|---|---|
| Updated | Dec 2, 2025 |