Baker Coordinator

Core entry point for the package

The BakerCoordinator is the single entry point for runtime navmesh baking. It replaces the legacy NavMeshBaker and manages the NavMeshBakerService internally.

Create a Baker Coordinator in the scene by going to GameObject -> Runtime Navmesh Baker -> Add Navmesh Baker

Overview

  • One entry point that creates and manages the NavMeshBakerService

  • Profile-driven via NavMeshBakeProfile (mode, size, thresholds, agent types)

  • Follows a Center Target (player, camera, or any transform)

  • Works with any number of DynamicNavMeshSurface components in the scene

  • Exposes runtime controls and diagnostics in the inspector

Typical Setup

  1. Menu: GameObject → Runtime Navmesh Baker → Add Coordinator

  2. Create/assign a NavMeshBakeProfile

  3. Set Center Target (player or main camera)

  4. Ensure your bakeable areas use DynamicNavMeshSurface

  5. Enter Play Mode

Inspector Reference

Properties

  • Profile Reference to a NavMeshBakeProfile. Defines bake mode (Continuous AABB or Grid Cells), sizes, thresholds, intervals, agent types, and area costs.

  • Center Target Transform to follow when computing bake volumes or selecting grid cells.

Service Panel

  • Shows the NavMeshBakerService that the coordinator owns.

  • If missing, a warning appears with Add Service Component (advanced; normally not needed).

  • Service GO shows the instance created/owned by the coordinator.

Play Mode metrics (live):

  • Queued / In-Flight / Skipped(no-src) Current queue length, running async jobs, and jobs skipped due to missing sources.

  • Update p95 / Collect p95 / Schedule p95 (ms) 95th-percentile timings for update, source collection, and scheduling stages, via GetPerfSnapshot.

Actions

  • Start Baking Starts the coordinator’s baking flow (initial enqueue + runtime updates).

  • Bake All Now Forces a full pass enqueue across all registered surfaces immediately.

  • Enqueue Current Grid Cells Enqueues the active cell and configured rings around the center target. Enabled only when the assigned profile’s Bake Mode is Grid Cells.

  • Open Bake Monitor Opens the Bake Monitor editor window for a live, multi-surface view.

  • Select Service Focuses the owned NavMeshBakerService GameObject in the hierarchy.

Public API (Coordinator)

  • SetProfile(NavMeshBakeProfile profile)

  • SetCenterTarget(Transform target)

  • StartBaking()

  • BakeAllNow()

  • GetService()NavMeshBakerService

Best Practices

  • Keep one BakerCoordinator per scene

  • Use Profiles to switch between Continuous AABB (small/roaming) and Grid Cells (large/procedural)

  • Use the Bake Monitor during development to track throughput and hotspots

Last updated