Skip to content

Switch navigation modes

BP_WaypointComponent supports two ways to visualize the same nav-mesh path. This tutorial switches between them with copy-paste presets.

flowchart TB
  Query[Nav path query] --> Mode{Nav Mode}
  Mode -->|Spawn| Actors[BP_WaypointActor at Mesh Distance]
  Mode -->|SplineMesh| Spline[SplineMesh along SplineComp]
  Actors --> Pool[Spawned Meshes array]
  Spline --> BPI[BPI_Waypoint on pawn]
ModeVisualBest for
SpawnDiscrete BP_WaypointActor arrowsQuest markers, classic “breadcrumb” trail
SplineMeshContinuous mesh deformed along pathGround-hugging line, sci-fi floor guides

Default shipped value: Spawn.

Example A — Spawn mode (shipped default)

Section titled “Example A — Spawn mode (shipped default)”

Open BP_WaypointComponent on your pawn → Class Defaults:

PropertyValue
Nav ModeSpawn
Max Number Of Meshes60
Mesh Distance250
Draw Debug Stringsfalse

Press Play and call Find Path to Actor. The component runs Internal_PathFinding_SpawnMode, spawning BP_WaypointActor instances up to Max Number Of Meshes.

PresetMax MeshesMesh DistanceUse case
Shipped60250General outdoor demo
Dense indoor25120Corridors
Open world30400Long paths, fewer actors
PropertyValue
Nav ModeSplineMesh

SplineMesh mode calls BPI_Waypoint on the owning actor:

Interface functionPurpose
Add Waypoint Spline ComponentAttach a new spline mesh segment
Remove Spline MeshesClear segments before rebuilding

ThirdPersonCharacter already implements this interface — open it as a reference when adding the interface to your own pawn.

Find Path to Actor and Find Path to Location accept a Spline Component input. The demo passes the pawn’s root Spline component.

Find Path to Actor
Actor = Objective
Spline Component = Spline (on pawn)

Without BPI_Waypoint implemented, spline mode will not render correctly.

When Nav Mode is SplineMesh:

  1. Internal_PathFinding_SplineMode samples nav path points.
  2. Internal_RemoveSplineMeshes clears old segments.
  3. New SplineMesh components are added via BPI_Waypoint → Add Waypoint Spline Component.
sequenceDiagram
  participant WC as BP_WaypointComponent
  participant Pawn as Pawn with BPI_Waypoint
  WC->>WC: Internal_PathFinding_SplineMode
  WC->>Pawn: Remove Spline Meshes
  loop Each path segment
    WC->>Pawn: Add Waypoint Spline Component
  end
  1. Open Map/Overview, press Play.
  2. Note the default Spawn trail when pressing F.
  3. Stop PIE, set Nav Mode = SplineMesh on the character’s BP_WaypointComponent.
  4. Play again — compare the continuous spline trail.

Revert to Spawn when finished unless your game targets spline mode.

Tick Time works regardless of Nav Mode:

Tick TimeBehaviour
0Path updates only when you call Find Path again
0.5Re-path twice per second (good for moving targets)
2.0Light refresh for slow-moving goals

Internal_TryStartTimer schedules the repeat using Timer Handle Find Path To Actor.

Choose Spawn when…Choose SplineMesh when…
You want per-marker actors you can customize (BP_WaypointActor child)You want a continuous ground decal / tube
Minimal pawn setup (no interface)Pawn already has spline infrastructure
Performance-sensitive mobile (cap with Max Number Of Meshes)Art direction needs smooth curves