LCM Nav3D Free demo Get it on Fab

LCM Nav3D - API Reference

The classes, functions and properties you can reach from Blueprint, the Details panel, a Behaviour Tree, a StateTree or a Mass config.

Internal C++ - solver internals, replication contracts, subsystems with no Blueprint surface - is deliberately not listed. If a type is not here, you are not expected to call it.

Classes

LcmAIPerceptionBridge

Mirrors UAIPerceptionComponent-sensed actors into a decaying threat tracker for the tactical EQS surface.

Functions

Properties

LcmBTDecorator_ChunkLoaded

Decorator that passes only when the SVO chunk containing the queried world position is currently loaded (cheap single-endpoint hash lookup, no path probe).

Properties

LcmBTDecorator_HasLineOfSight

Decorator that passes when the agent has volumetric line of sight to the target via the Lazy Theta* LOS walker, honouring AgentRadius through the JFA clearance gate.

Properties

LcmBTDecorator_IsInCover

Decorator that passes when the agent is in cover relative to a threat: its leaf SweepPenalty is at or below MaxSweepPenalty AND the threat's line of sight to it is blocked.

Properties

LcmBTDecorator_PathLengthBelow

Decorator that passes when the true-3D LCM Nav3D path distance from the agent to the goal is below MaxLengthCm (uses the synchronous tactical-library path probe; do not run per-frame).

Properties

LcmBTDecorator_ThreatVisibleViaPerception

Decorator that passes when AIPerception currently perceives a hostile AND the agent has clear volumetric LOS to it (the "can-shoot-now" gate).

Properties

LcmBTService_NavigationLoad

Service that each tick writes the navigation manager's SVO streaming stats into a blackboard key so designers can gate expensive LCM Nav3D queries on idle streaming.

Properties

LcmBTService_PathProgressMonitor

Service that each tick writes a Euclidean approach-progress fraction (1 - dist/initial_dist) and remaining distance to the goal into blackboard keys.

Properties

LcmBTService_SquadSnapshot

Service that each tick aggregates perceived allies within SquadRadius and writes ally count, squad centroid, and cohesion radius into blackboard keys.

Properties

LcmBTService_ThreatFieldSampler

Service that each tick samples the SVO SweepPenalty risk field at the agent's location, writing the threat level and an "in threat zone" flag (level >= AlertThreshold) into blackboard keys.

Properties

LcmBTTask_ChunkPrewarm

Task that proactively forces SVO chunk generation at a target location and waits (up to TimeoutSeconds) for the chunk to become ready before succeeding.

Properties

LcmBTTask_DynamicObstaclePush

Task that steers the agent down the SweepPenalty gradient (away from rising threat) until it clears the obstacle or times out.

Properties

LcmBTTask_EvadeCBS

Task that retreats from the threat gradient using context-based steering (CBS) over SVO danger sampling, blending an anti-threat direction with ray-evaluated safe headings until clear or timed out.

Properties

LcmBTTask_FindCover

Behavior Tree task that locates a navigable SVO leaf with line-of-sight blocked from the blackboard enemy actor (i.e. cover). Returns Succeeded once a valid cover location is written back to the blackboard, or Failed if no cover within SearchRadius qualifies.

Properties

LcmBTTask_FlyTo

Behavior Tree task that flies an AI pawn from its current position to a blackboard target via the LCMNav3D pathfinder. Owns one async path request token (re-issued on dynamic replanning), runs per-tick steering (configurable flight style + avoidance style + wall avoidance + swarm separation), and finishes the task on arrival within AcceptanceRadius.

Functions

Properties

LcmBTTask_FollowFlowField

Task that computes an LCM Nav3D path to the goal and follows its waypoints (LinearDirect steering) until arrival or timeout.

Properties

LcmBTTask_FollowTarget

Task that holds a 3D offset from a moving target: escort, wingman, overwatch drone. It does not terminate on arrival the way a move task does, because the slot it is holding keeps moving.

The agent matches the target's velocity and corrects the residual offset error on top of that, so a follower that is tracking well sits on its slot rather than trailing behind it by a fixed lag. The target's velocity is measured from its observed motion, so it works for a target moved by any means, including one with no movement component.

The slot is re-checked as the target moves and pulled in toward the target if it would otherwise sit inside geometry: a leader hugging a wall does not drag its escort into that wall.

Properties

LcmBTTask_Hover

Task that holds a position, optionally facing something, optionally for a fixed time.

Hovering is not the same as commanding zero velocity. A body with momentum that is told to stop coasts until drag absorbs it, which for a winged agent can be a long way. This task holds a point, so the agent returns to it.

Properties

LcmBTTask_Land

Task that brings the agent down to a landing point, proving the descent corridor is clear as it goes. LandTarget chooses how the landing point is found: an authored world height, the surface directly below, or a search for a flat enough site nearby.

If the SVO is not resident under the agent (a streaming gap), the task waits rather than failing, because landing in the wrong place is worse than pausing.

Properties

LcmBTTask_LookAt

Task that rotates the agent to face a target, easing in, and succeeds once it is pointing within AcceptableErrorDegrees.

The alignment test is a true 3D angle, so a target directly above or below the agent is handled correctly. See the note under LcmBTTask_TurnInPlace for why this matters and when the engine's stock rotation task is the better choice.

Properties

LcmBTTask_MoveToAndFace

Task that moves the agent to a destination and then turns to face something once it arrives. The two halves are one task on purpose, so the turn is guaranteed to follow the arrival.

If no separate face target is set, the agent faces its destination. This is the "arrive at the perch and look at the door" node.

It is not a replacement for LcmBTTask_FlyTo: it plans one route on entry and follows it. Use FlyTo for long range travel with replanning and avoidance, and this for the last leg.

Properties

LcmBTTask_OrbitTarget

Task that circles the agent around a target, holding OrbitRadius while moving tangentially at OrbitSpeed.

Properties

LcmBTTask_Patrol

Task that moves the agent through a list of waypoints in order, pausing at each, optionally looping. By default it routes between waypoints through the navigation data rather than flying the straight line, so a patrol whose waypoints are separated by geometry follows the building instead of passing through it.

While dwelling at a waypoint the agent holds station, so a body with momentum stays on the waypoint rather than drifting off it.

Properties

LcmBTTask_TakeOff

Task that climbs the agent to a target altitude, proving the air above it is clear as it goes.

The ascent corridor is re-tested while climbing rather than only at the start, because a climb that has been stopped by a ceiling and a climb that is merely slow look identical from the outside. If the SVO is not resident the task waits rather than reporting a blocked climb.

Properties

LcmBTTask_TurnInPlace

Task that rotates the agent toward a target at a constant rate, without translating, and succeeds once it is pointing within AcceptableErrorDegrees.

Why not the stock UBTTask_RotateToFaceBBEntry? For a walking agent, use it. For a flying one, note two things about it. Its success test uses a 2D angle that ignores the Z axis entirely, so a target directly above the agent reads as already faced. And it applies rotation through the AIController focus system, which drops pitch unless the pawn opts in with bUseControllerRotationPitch. On a volumetric agent that combination means the stock task can report success while pointing level at a target overhead. This task measures the real 3D angle and applies pitch.

Properties

LcmDynamicObstacleComponent

Marks an actor as a dynamic LCMNav3D obstacle.

Two operating modes, selected by r.LcmNav.DynObs.EventDriven:

  1. EVENT-DRIVEN (default, EventDriven=1) -- binds to RootComponent->TransformUpdated. Per-event the component unions the new bounding box into a pending dirty region and arms a one-shot coalesce timer (r.LcmNav.DynObs.CoalesceMs, default 33 ms = one frame at 30 fps). On timer expiry the union of old-footprint + all coalesced new-footprints is flushed in a single UpdateDynamicObstacle call. Component tick is disabled in this mode. Zero CPU cost when the actor is stationary; instant response (within one coalesce window) when it moves.

  2. POLLING (EventDriven=0) -- legacy behavior: TickComponent at 10 Hz polls GetActorLocation and fires only when displacement exceeds UpdateDistanceThreshold (default 50 cm). Provided for deterministic tests where event jitter would perturb traces.

Functions

Properties

EnvQueryContext_LcmKnownThreats

EQS context exposing tag-marked threat actors as query targets for tactical tests.

Properties

EnvQueryContext_LcmThreatsFromAIPerception

EQS context exposing the querier's AI-perception-tracked threats as query targets.

EnvQueryGenerator_LcmHemisphericalRing3D

Hemispherical-ring shell of unblocked 3D points around a context.

Properties

EnvQueryGenerator_LcmPointsAlongPath

Unblocked points sampled along the LCM Nav3D path from one context to another.

Properties

EnvQueryGenerator_LcmPortalProximity

Candidate points at macro-graph portal centres near a context (chokepoints).

Properties

EnvQueryGenerator_LcmPointsInSVOVolume

Generates uniform-density candidate points in an AABB, filtered to unblocked SVO volume leaves.

Properties

EnvQueryTest_LcmLineOfSight3D

Visible to the context via true-3D SVO line of sight. Boolean.

Properties

EnvQueryTest_LcmReachability3D

An LCM Nav3D path exists from the context to the item. Boolean.

Properties

EnvQueryTest_LcmPathDistance3D

LCM Nav3D path distance (NOT euclidean) from the context to the item. Float (cm).

Properties

EnvQueryTest_LcmThreatExposure

Summed SweepPenalty along the item→threat segments. Float (lower = safer).

Properties

EnvQueryTest_LcmCoverScore3D

Fraction of context threats the item is occluded from. Float (higher = better cover).

Properties

EnvQueryTest_LcmHeightAdvantage

Vertical advantage of the item over the context (high ground). Float.

Properties

LcmFlightMovementComponent

Opt-in pawn movement component that turns nav guidance velocities (RequestVelocity from FlyTo tasks) into realistic 6-DOF flight/swim motion via ULcmFlightDynamics, sweeps the transform, and broadcasts the anim state. Inert until bEnabled is set.

Functions

Properties

LcmFlyToLocationAsyncAction

The LCM Fly To Location latent Blueprint node: flies a pawn to a point or an actor through LCM Nav3D and fires On Success or On Fail, like AI Move To. No Behavior Tree, StateTree or AI Controller needed. Runs the StateTree Fly To task's own code (FLcmSTTask_FlyTo::EnterFlight / TickFlight / ExitFlight), so the pawn flies exactly as under that task. One active request per pawn; a newer one aborts the older. See Tutorial 13.

Functions

Properties

LcmFlyingPawn

Note: APawn already inherits from INavAgentInterface - re-listing it here triggers C4584 (duplicate base class). We just override the virtuals.

Properties

LcmGameplayAbility_RequestPath

GameplayAbility wrapper around the LCM Nav3D async path request, gating it through the standard GAS cost/cooldown/cancellation pipeline (budget via ULcmNavAttributeSet) and broadcasting the resulting path on completion.

Functions

Properties

LcmMassCrowdSpawner

World-Partition-safe Mass spawner: never streams out, so its crowd's lifetime is not tied to the player's distance from the spawn point (fixes the "all agents disappear when the player leaves the area" WP trap).

Properties

LcmMassFlowSteerTrait

[DEPRECATED - M3, 2026-07-03] Legacy flow-field crowd trait. Superseded by the unified ULcmMassNavAgentTrait ("LCM Nav3D Agent") with NavMode=FlowField, which composes a byte-identical archetype. Kept fully functional; prefer the unified trait for new content. Authoring trait for a flow-field-steered crowd agent.

Properties

LcmMassGoalTrait

Authoring trait: assign a fixed-location or tagged-actor goal to a Nav3D Agent so it auto-paths there (requires the "LCM Nav3D Agent" trait too).

Properties

LcmMassNavISMRenderTrait

Authoring trait: drop on the Mass config, set a mesh, get instanced visuals.

Properties

LcmMassNav3DTrait

[DEPRECATED - M3, 2026-07-03] Legacy path-based agent trait. Superseded by the unified ULcmMassNavAgentTrait ("LCM Nav3D Agent") with NavMode=PathFollowing, which composes a byte-identical archetype. Kept fully functional so existing configs (DA_MassAgent_Apex) keep working; prefer the unified trait for new content.

Authoring trait: attaches the path nav fragments and exposes radius/speed, pathfinding, and natural-movement settings.

Properties

LcmMassNavAgentTrait

[M3] Unified authoring trait: one trait, a NavMode selector. PathFollowing composes the path archetype (NavAgent + PathRequest + PathResult); FlowField composes the flow archetype (FlowField state + a const shared config fragment). Mode-specific properties hide via EditCondition on NavMode.

Properties

LcmMassPerceptionTrait

Authoring trait: makes an LCM Nav3D Mass agent both a senser and a perceivable (faction-based SVO-LOS perception), exposing sight/FOV/eye-height settings.

Properties

LcmMassRepresentationTrait

Preconfigured UMassVisualizationTrait: LOD-switched crowd rendering that draws the instanced static mesh at all visible LODs by default (no "see nothing" trap), and self-provides the LOD-collector + actor fragments so it works as one trait.

LcmNavAreaModifier

A cost-area volume (box, sphere or capsule). Every LCM Nav3D planner prices routes through it: travel inside costs the area's Default Cost times the distance, and each entry pays its Fixed Area Entering Cost. An agent's navigation query filter can override either per class, or exclude the class. See Tutorial 10.

Functions

Properties

LcmNavArea_Storm, _PreferredLane, _TollGate, _Territory, _Restricted, _NoFly

Ready-made NavArea classes: x5 travel, x0.5 travel, +2000 to enter, free until a filter prices it, free until a filter excludes it, and impassable for everyone.

LcmNavFilter_Prey, LcmNavFilter_Civilian

Ready-made navigation query filters: Territory x10, and Restricted excluded.

LcmNavAreaQueryLibrary

Blueprint function library exposing the LCM Nav3D nav-extension registry so designers can query cost overlays and registered NavLinks from BP graphs.

Functions

LcmNavAttributeSet

GAS attribute set surfacing per-agent path-request budgets so projects can throttle expensive LCM Nav3D queries through the standard GameplayEffect pipeline.

Functions

Properties

LcmNavigationInvokerComponent

Attach this to the Player or VIPs. The SVO Manager will only generate voxel data for chunks within this radius.

Properties

LcmNavigationManagerSVO

LCMNav3D world singleton - the central navigation manager actor. Spawns the four subsystem components (ULcmSVOStreamingComponent, ULcmSVOGenerationComponent, ULcmPathfindingComponent, ULcmSVORenderComponent); owns the SVO data containers (FiniteData for finite worlds, ActiveVirtualChunks for infinite worlds); owns FLcmMacroGraph + FLcmPortalBuilder; hosts the multicast RPCs for dynamic-obstacle invalidation and flow-field-ready notifications. Exactly one instance per UWorld; auto-discovered via UGameplayStatics:: GetActorOfClass.

Functions

Properties

LcmNavLinkComponent

3D vertical NavLink component (subclass of UNavLinkCustomComponent) with designer-set world-space LinkStart/LinkEnd for ladders, shafts, and teleporters that Recast's surface-projected links cannot represent.

Functions

Properties

LcmNavVolume

Defines the playable area for offline SVO generation. Acts as the master bounds for slicing and baking ALcmNavigationChunk actors.

Functions

Properties

LcmSmartObjectBehaviorDef_CoverPocket

SmartObject behaviour definition for a designer-placed cover pocket, validated at claim time by SweepPenalty + threat-hint LOS with a FindBestCover fallback when the placed pocket has gone hot.

Properties

LcmSmartObjectBehaviorDef_PatrolWaypoint

SmartObject behaviour definition for one patrol waypoint; designers chain placed waypoints via NextWaypointTag to author a patrol route as content.

Properties

LcmSmartObjectBehaviorDef_Perch

SmartObject behaviour definition for a volumetric perch: fly here, hover or stand, and dwell - a 3D-only smart-object pattern LCM Nav3D's free-space SVO supports where surface-projected Recast navmesh cannot.

Properties

LcmSVODataAsset

A lightweight, streamable asset that holds pre-calculated SVO navigation data. Designed to be loaded asynchronously by World Partition.

Properties

LcmTacticalQueryLibrary

Static Blueprint-callable wrappers for LCMNav3D tactical primitives.

All functions are pure CPU and synchronous - they execute on the calling thread (Blueprint VM thread, BT service tick, EQS test evaluation, etc.) and return immediately. None of them dispatch GPU work or async jobs. Designed to be called at EQS-test frequency (tens to hundreds per query per frame) without budget concerns.

Functions