# NavMesh + Procedural Generation + Build\_Button

**URL:** <https://forums.unrealengine.com/t/navmesh-procedural-generation-build-button/432417>\
**Category:** Blueprint\
**Tags:** Procedural-Generation, unreal-engine, construction-script, navmesh, Blueprint, question\
**Created:** [August 25, 2018, 10:15am UTC](https://forums.unrealengine.com/t/navmesh-procedural-generation-build-button/432417 "2018-08-25T10:15:06Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sn\_a\_ke](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Sn\_a\_ke](https://forums.unrealengine.com/u/Sn_a_ke)\
**Post date:** [August 25, 2018, 10:15am UTC](https://forums.unrealengine.com/t/navmesh-procedural-generation-build-button/432417/1 "2018-08-25T10:15:06Z")

</div>

a simple example of generating something:

 ![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/c/f/9/cf91b194b9fbefaec9b08f90d773d66345406a17.png)

![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/1/8/3/183c90a5868c13345377504d090c5ad8484f5c61.gif)

when you click the build button  
NavMesh does not consider the whole generation

I created a BlueprintFunctionLibrary:

```
UCLASS()
class NAVMESH_BUG_API UMyBlueprintFunctionLibrary : public UBlueprintFunctionLibrary
{
	GENERATED_BODY()
	
	
	UFUNCTION(BlueprintCallable, Category = "NavMesh")
		static void UpdateNavMesh_Actor(AActor* Actor)
	{
		AActor& AVal = *Actor;
		FNavigationSystem::UpdateActorAndComponentData(AVal, true);
	}
	
	UFUNCTION(BlueprintCallable, Category = "NavMesh")
		static void UpdateNavMesh_Component(UActorComponent* ActorComponent)
	{
		UActorComponent& CVal = *ActorComponent;
		FNavigationSystem::UpdateComponentData(CVal);
	}
};

```

but when the button is clicked, the function does not work from the construction script

![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/c/9/0/c90aa49b8053252abfe64f2c8ec5dfd38af293cf.gif)

how to act in such a situation,  
that would navmesh always generated correctly, under any circumstances?

And also the question of EpicGames - why does not Blueprints have a navigation update function?

[test project files][4]

---

<div class="post-metadata">

**Author:** ![Cykablatta](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Cykablatta](https://forums.unrealengine.com/u/Cykablatta)\
**Post date:** [July 1, 2025, 7:39am UTC](https://forums.unrealengine.com/t/navmesh-procedural-generation-build-button/432417/2 "2025-07-01T07:39:36Z")

</div>

> [@Sn\_a\_ke](#):
>
> why does not Blueprints have a navigation update function?

I agree.

If I need to rebuild nav in runtime, at the end of a map gen, C++ is the only way I’ve? @Sn_a_ke
