# UE5.7的InstancedStaticMeshComponent，调用AddInstance后，如果Instance距离过远就会被剔除掉。5.6正常 

**URL:** <https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692>\
**Category:** 简体中文 (Simplified Chinese)\
**Tags:** unreal-engine, Epic-Pro-Support, question\
**Created:** [November 25, 2025, 9:53am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692 "2025-11-25T09:53:00Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![anonymous-edc](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous-edc](https://forums.unrealengine.com/u/anonymous-edc)\
**Post date:** [November 25, 2025, 9:53am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692/1 "2025-11-25T09:53:00Z")

</div>

[Image Removed]

看代码，5.7比5.6多了一些代码，断点调试了一下会发现在AddInstance后，会先更新NavMesh的Bounds，这时其他类型的Bounds都是有效的，因此会使用其他类型Bounds直接更新给NavMesh的Bounds。

之后​调用InvalidateCachedBounds让所有Bounds都设为无效，但因为前面更新过NavMesh的Bounds，所以又把NavMesh的Bounds直接设为有效。

之后其他Bounds在重新计算时，由于​NavMesh的Bounds有效，就用NavMesh的Bounds刷新了所有Bounds。

最后导致AddInstance之后，最终所有Bounds都还是老的Bounds，就相当于没有重新计算Bounds。​

​

5.6没有后面这段代码，表现是正常的不会被错误剔除，目前升级到官方5.7版（非源码版本），请问在不改引擎源码的情况下，应该怎样解决这个问题？

---

<div class="post-metadata">

**Author:** ![TonyChen1](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@TonyChen1](https://forums.unrealengine.com/u/TonyChen1)\
**Post date:** [November 26, 2025, 8:14am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692/2 "2025-11-26T08:14:11Z")

</div>

你好，看了您的描述，​我觉得有个细节可以再交流的清楚一点，您说之后其他Bounds在重新计算时，由于​NavMesh的Bounds有效，就用NavMesh的Bounds刷新了所有Bounds，这个我的理解在计算Hash的时候会把其type以及不同空间都包含进来，因此不应该出现NavMesh的Bounds会刷新所有Bounds的情况，您能否提供一个重现工程，视频什么的，我这边再根据具体情况来提交是navigation还是rendering的问题，最后如果不修改源码情况下，我觉得也只能把ISMC的bCanEverAffectNavigation关掉不走这块缓存处理流程来绕过这个问题，或者将视觉和导航拆开去处理

​

---

<div class="post-metadata">

**Author:** ![anonymous-edc](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous-edc](https://forums.unrealengine.com/u/anonymous-edc)\
**Post date:** [November 26, 2025, 9:04am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692/3 "2025-11-26T09:04:50Z")

</div>

这是测试工程和测试视频的zip包，每秒会动态Add一个Instance，镜头向右看就可以看到Instance会被裁剪掉，同样的测试方法，在5.6版本就都是正常的。具体原因就如同上述问题所示。

---

<div class="post-metadata">

**Author:** ![TonyChen1](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@TonyChen1](https://forums.unrealengine.com/u/TonyChen1)\
**Post date:** [November 27, 2025, 4:49am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692/4 "2025-11-27T04:49:27Z")

</div>

感谢反馈，看上去​RenderUpdate时想要UpdateBounds，但却直接从CacheBounds里的navigation里拿了，并没有实际重新计算整体bounds，5.7中bNavigationCachedBoundsUpdated的引入也需要考虑RenderUpdate想要UpdateBounds的情况，我会提个Jira反馈并在后面的版本中修复。

---

<div class="post-metadata">

**Author:** ![TonyChen1](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@TonyChen1](https://forums.unrealengine.com/u/TonyChen1)\
**Post date:** [December 2, 2025, 1:01am UTC](https://forums.unrealengine.com/t/ue5-7-instancedstaticmeshcomponent-addinstance-instance-5-6/2688692/5 "2025-12-02T01:01:52Z")

</div>

这个Jira已提交后续会看到，该问题已在5.7.2上修复，谢谢反馈

> **[The Unreal Engine Issues and Bug Tracker](https://issues.unrealengine.com/issue/UE%5C-356359)**
>
> Welcome to the Unreal Engine Issue and Bug Tracker. You can check the status of an issue and search for existing bugs. See latest bug fixes too.
