Issues with iPad

Hi! I’m having some problems with iPad and A* Pathfinding Project.

Here is shortly what I’m trying to do.

  1. I purchased DunGen asset that generates random dungeons that my game now uses. I needed some monsters in the dungeon so next I needed navmesh generated for the dungeon. The DunGen asset had a A* Pathfinding Project Pro Integration so next I purchased your A* Pathfinding Project.

  2. I added the script that generates Recast Graph to the dungeon. http://www.aegongames.com/blog/wp-content/uploads/DunGen_Readme.pdf

  3. Game works in the editor and with android device. When player reaches an end of dungeon, new dungeon is generated.

  4. I build the game for iOS release. After about 2nd or 3rd dungeon that is generated the game crashes. I’ve tried to search for solution with no luck. I think that memory may be incrementing with new graphs generated or something. If I remove the A* Pathfinding Project from the scene the game works so it has something to do with it. This is what xCode reports before the iPad crashes. I think this is happening when it’s generating new level and gets out of memory.

Not allowed to access triangles/indices on mesh ‘Jugs_Preset_02’
Pathfinding.RecastGraph:CollectMeshes(List`1&, Bounds)
Pathfinding.RecastGraph:ScanAllTiles(OnScanStatus)
AstarPath:ScanLoop(OnScanStatus)
DunGen.Adapters.AStarNavMeshAdapter:Generate(Dungeon)

[ line 72]
(Filename: Line: 72)

Generating Tile #0 of 1
Assigning Graph Indices
Connecing Tile #0 of 1
Scanning - Process took 5970 ms to complete
UnityEngine.Logger:Log(LogType, Object)
AstarPath:ScanLoop(OnScanStatus)
DunGen.Adapters.AStarNavMeshAdapter:Generate(Dungeon)

(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

WARNING -> applicationDidReceiveMemoryWarning()

(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

Unloading 5 Unused Serialized files (Serialized files now loaded: 0)
UnloadTime: 93.008537 ms
Collecting Meshes
No MeshFilters were found contained in the layers specified by the ‘mask’ variables
UnityEngine.Logger:Log(LogType, Object)
Pathfinding.RecastGraph:CollectMeshes(List`1&, Bounds)
Pathfinding.RecastGraph:ScanAllTiles(OnScanStatus)
AstarPath:ScanLoop(OnScanStatus)
AstarPath:Awake()

(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

Generating Tile #0 of 1

Hi

Hm, I am not sure why that would happen.
You could try using smaller tiles which would make it use less memory when scanning the graph.
Also you can try calling System.GC.Collect() right before scanning the graph.

Can you profile the game and check if the memory is increasing? (there is also a component called AstarDebugger which you can attach to an object and it will show statistics for the game (memory statistics are for the whole game, not just the pathfinding part)).