Runtime Navmesh Baker 1.4.0
Runtime Navmesh Baker — a coordinator-driven system for runtime NavMesh generation in Unity, supporting Continuous AABB, Grid Cell streaming, and One Shot bake modes with full event and profile integration.
Loading...
Searching...
No Matches
MegaCrush.RuntimeNavmeshBaker.DataManager Class Referencesealed

Manages NavMeshData and bound NavMeshDataInstance per JobKey. Instances are placed at identity so data-local == world. More...

Public Member Functions

NavMeshData EnsureData (JobKey key, out NavMeshDataInstance instance)
 Ensure a NavMeshData exists for the key and that an instance is bound at identity. If an instance is already valid, it is kept (no remove/rebind churn).
 
void AdoptExternalData (JobKey key, NavMeshData data)
 Adopt a caller-provided NavMeshData for a key and (re)bind an instance at identity. Useful when baking into an existing asset or for combined one-shot overrides.
 
void EnsurePlaceholdersForSurface (DynamicNavMeshSurface surface, int[] agentTypeIds)
 
void RemoveAll ()
 Unbind all instances and clear all data.
 
void Remove (JobKey key)
 Remove a specific key (unbind instance if valid).
 
void RemoveForSurface (int surfaceId)
 Remove all keys that belong to a given surface ID.
 

Private Attributes

readonly Dictionary< JobKey, NavMeshData > _dataByKey = new()
 
readonly Dictionary< JobKey, NavMeshDataInstance > _instances = new()
 

Detailed Description

Manages NavMeshData and bound NavMeshDataInstance per JobKey. Instances are placed at identity so data-local == world.

Member Function Documentation

◆ AdoptExternalData()

void MegaCrush.RuntimeNavmeshBaker.DataManager.AdoptExternalData ( JobKey key,
NavMeshData data )

Adopt a caller-provided NavMeshData for a key and (re)bind an instance at identity. Useful when baking into an existing asset or for combined one-shot overrides.

◆ EnsureData()

NavMeshData MegaCrush.RuntimeNavmeshBaker.DataManager.EnsureData ( JobKey key,
out NavMeshDataInstance instance )

Ensure a NavMeshData exists for the key and that an instance is bound at identity. If an instance is already valid, it is kept (no remove/rebind churn).

◆ EnsurePlaceholdersForSurface()

void MegaCrush.RuntimeNavmeshBaker.DataManager.EnsurePlaceholdersForSurface ( DynamicNavMeshSurface surface,
int[] agentTypeIds )

◆ Remove()

void MegaCrush.RuntimeNavmeshBaker.DataManager.Remove ( JobKey key)

Remove a specific key (unbind instance if valid).

◆ RemoveAll()

void MegaCrush.RuntimeNavmeshBaker.DataManager.RemoveAll ( )

Unbind all instances and clear all data.

◆ RemoveForSurface()

void MegaCrush.RuntimeNavmeshBaker.DataManager.RemoveForSurface ( int surfaceId)

Remove all keys that belong to a given surface ID.

Member Data Documentation

◆ _dataByKey

readonly Dictionary<JobKey, NavMeshData> MegaCrush.RuntimeNavmeshBaker.DataManager._dataByKey = new()
private

◆ _instances

readonly Dictionary<JobKey, NavMeshDataInstance> MegaCrush.RuntimeNavmeshBaker.DataManager._instances = new()
private

The documentation for this class was generated from the following file: