Hey Voxel, and all!
Continuing our conversation about how to get A* Pathfinding to run outside of Unity, I’ve taken the steps you’ve suggested so far.
To fill everyone else in who might be interested, the following symbols need to be set to true when compiling: ASTAR_NO_GRID_GRAPH, ASTAR_NO_POINT_GRAPH and ASTAR_NO_GUI.
You said to ignore:
Editor, ExampleScenes, Modifiers, Navmesh except the RelevantGraphSurface script (you might want the navmesh cut script, but let’s skip that for simplicity), RVO, Utilities/UnityReferenceHelper, Utilities/AstarProfiler, Generators/GridGenerator, Generators/LayerGridGraphGenerator, Generators/PointGenerator, Generators/NodeClasses/GridNode, Generators/NodeClasses/PointNode, Generators/Utilities/NavMeshRenderer, Generators/Utilities/ObjImporter, Generators/Utilities/TileHandler, Generators/Utilities/Voxels/DebugUtility, Core/AI, Core/RVO. The Seeker script could be useful, but probably it is easier to just copy and paste bits of code from it if you need to rather than getting it to work outside Unity.
Additionally, all methods called OnDrawGizmos can be deleted.
By doing this, there are lots of errors now in AStarPath not being able to find GraphModifier and the referencing code looks important.
Secondly, I went to add in my own StartCoroutine from the link you suggested (http://forum.arongranberg.com/) and then realized it’s already in the code, conditionally excluded from compilation because it looks for a symbol called “PhotonImplementation”. What is this for? I followed the #if’s for this symbol and it almost looks like it was an attempt to have the code build outside of Unity. Unfortunately, enabling this symbol created even more errors.
Also, in case anyone else is interested in this topic, if you build all of the classes from the A* Pathfinding Project in a standalone XamarinStudio project targeting a Library, and you add references to all the included DLLs, you will get NO ERRORS and NO WARNINGS but, there will be many references to the Unity Engine that will cause failure at runtime. And, that is what I’m working through right now.