Navigation3D components

Service dependencies, serializable fields (name / type / default / purpose), and responsibilities for every component. Editor variants (Editor*) own Bake UI at edit time and export into the matching runtime component. FlightNavigationComponent and HybridNavigationComponent have no editor variants—add them from the Game menu.

Component overview

ComponentRoleService
SvoNavigationVolumeComponentSVO airspace + cost fieldNavigation3DVolumeService
FlightNavigationComponentFlight query agentNavigation3DFlightAgentService
HybridNavigationComponentUnified multi-domain facadeNavigation3DHybridService
ClimbNavigationComponentClimb surface queriesNavigation3DClimbService
NavigationCostModifierComponentShape cost / no-flyNavigation3DCostModifierService
NavigationFlightCorridorComponentFlight corridor preferenceNavigation3DFlightCorridorService
NavigationDomainLinkComponentDomain transfer / takeoff linksNavigation3DDomainLinkService
FlightPathFollowComponentPath follow (desired velocity)
Navigation3DSystemComponentSystem scheduling and registriesNavigation3DService

SvoNavigationVolumeComponent

Voxelizes from a same-entity Recast geometry provider or loads a baked asset; supports full / regional rebuild, streaming build, runtime cost zones, and spatial queries. Implements NavigationVolumeRequestBus.

Services: provides / exclusive Navigation3DVolumeService; depends on (same entity) RecastNavigationProviderService (not required on the baked-asset path).

FieldKeyTypeDefaultPurpose
Leaf voxel sizeLeafVoxelSizefloat0.5Finest sub-voxel edge (m), Min 0.05
Chunk sizeChunkSizefloat128.0World size per chunk, Min 1.0
Radius tiersRadiusTiersvector<float>{ 0.5 }Agent radius tiers (m)
Cruise height low / highCruiseHeightLow / Highfloat0.0Default cruise height band
Auto buildAutoBuildbooltrueBuild on activate (ignored if baked asset set)
Streaming enabledStreamingEnabledboolfalseBaked only: page via SetActiveRegion
Baked assetBakedAssetAsset<SvoNavigationAsset>empty.svonav_baked

Editor extras: BakeOutputPath, GeometrySource, TestFrom / TestTo, TestPostProcessor. Streaming build budget defaults to 4 chunks per tick; override with /O3DE/Gems/Navigation3D/Runtime/BuildChunksPerTick or nav3d_setBuildBudget.

FlightNavigationComponent

Sync queries run pathfinding + post-process inline; async queries go to the system scheduler and return on FlightNavigationNotificationBus. No editor variant.

FieldKeyDefaultPurpose
AgentAgentsee belowAgent kinematics
Post processorPostProcessorHoverHover / FixedWing
Volume entityVolumeEntityinvalidDefault volume; auto-resolve if unset
Fixed-wing turn thresholdFixedWingTurnAngleThreshold≈0.785 radPenalize turns beyond this; ≤0 disables
Fixed-wing turn penaltyFixedWingTurnPenalty2.0Edge-cost multiplier for sharp turns

FlightAgentConfig:

FieldDefaultPurpose
Radius0.5Pick radius tier
Extra radius0.0Extra safety margin
Max speed / Max accel10.0 / 10.0Speed and centripetal accel caps
Sample step1.0Trajectory sample step (m)
Arrival slowdown0.0Arrival slowdown distance; 0 disables
Min cruise speed0.0Hover curvature tightening
Min turn radius5.0Fixed-wing min horizontal turn radius
Max climb angle0.5Fixed-wing max climb / dive (rad)
Min airspeed2.0Fixed-wing min airspeed

You can also inject a custom post-processor via SetPathPostProcessor. See Motion and following for how parameters shape trajectories.

HybridNavigationComponent

Ground→Detour, Air/Underwater→Flight, Climb→ClimbNavigation, Hybrid→ link coarse plan + per-segment refine + optional VTOL. Implements NavigationQueryRequestBus. No editor variant.

FieldDefaultPurpose
Detour / Flight / Climb / Volume entityinvalidBackend targets; default self / auto-resolve
Free vertical transferfalseAllow link-free VTOL vertical transfer
Safe climb height2.0Min free-column height for VTOL (m)
Transfer cost scale1.0Link traversal cost scale
Ground / Air / Underwater / Climb speed factor1.0Coarse-plan distance→cost factors
Max replans3Coarse-plan retries after fine-plan failure
Max cost iterations2Coarse / fine iteration count

UnderwaterRegion (AabbD) is serialized but not shown in the panel: free SVO space inside is classified as Underwater. You can also register via system UnderwaterRegionRequestBus with Water.

ClimbNavigationComponent

Builds a surface graph from steep triangles filtered from geometry, or loads .climbsurf_baked. Implements ClimbNavigationRequestBus (sync only).

FieldDefaultPurpose
Buildsee belowSurface-graph build parameters
Snap distance2.0Endpoint snap radius (m)
Auto buildtrueIgnored when baked asset is set
Baked assetempty.climbsurf_baked

ClimbBuildConfig: MinSlopeDegrees 55, MaxSlopeDegrees 120, SampleSpacing 1.0, MaxStepDistance 1.8, SurfaceOffset 0.3, MaxNormalAngleDelta 80, MergeFraction 0.25.

Editor extra: BakeOutputPath.

Binds this entity’s LmbrCentral Shape to a target SVO volume; registers on Activate and removes on Deactivate—no SVO rebuild.

FieldDefaultPurpose
Target volumeinvalidSVO volume entity
Multiplier0.5<1 prefer, >1 penalize; read-only when NoFly
No-flyfalseNo-fly (overrides Multiplier, ~1e9)

Extrudes local waypoints into an AABB sequence as a preference corridor (multiplier clamped to [0.01, 1.0]—preference only).

FieldDefaultPurpose
Target volumeinvalidSVO volume
Waypoints{}Ordered entity-local waypoints
Radius2.0Corridor half-width (m)
Preference0.5Discount multiplier (0,1]

Like a Detour off-mesh link: A / B domain anchors, direction, and traversal cost for Hybrid cross-domain routing.

FieldDefaultPurpose
Ground / Air offset(0,0,0)Entity-local anchors
Domain A / BGround / AirEndpoint domains
DirectionBidirectionalBidirectional / takeoff only / land only
Traversal cost1.0Coarse-plan edge penalty
Max agent radius0.00 = unlimited
EnabledtrueDisabled links are skipped

FlightPathFollowComponent

Never writes Transform—only publishes desired velocity. Fields: Config (FlightFollowConfig), AgentRadius (0.5), VolumeEntity. Full follow parameters in Motion and following.

No user-configurable fields. Owns: async query scheduling, active volume registry, domain-link registry, .svonav_baked / .climbsurf_baked asset handlers, and nav3d_* diagnostics. Default query budget 0.5 ms / 2000 expansions—see Debugging.

Next steps


Copyright © 2026 DawnEngine. All rights reserved.

DawnEngine is a commercial 3D engine distributed under the DawnEngine end-user license agreement. Engine binaries and source are proprietary and are not covered by the licenses below.

Documentation only: the prose and templates on this site are a derivative work of Open 3D Engine (O3DE) documentation by the O3DE Contributors, used under CC BY 4.0 (documentation content), Apache 2.0 (site code), and the MIT license (inline code samples).

The open-source 3D engine that DawnEngine is built on top of is Open 3D Engine . DawnEngine is not affiliated with, endorsed by, or sponsored by The Linux Foundation or the O3DE project. “O3DE” and “Open 3D Engine” are trademarks of The Linux Foundation.