Tuesday, January 19, 2010
Off-Mesh Connection Progress pt. 2
I just submitted bunch of off-mesh connection related code to the SVN. I think most of the functionality for point-to-point links are in place. The only things missing so far is tile-to-tile links and some optimizations. I also added polygon filtering functionality for the Detour API where it seemed valid.
The number of arguments to dtCreateNavMeshData() started to become so many that I put them in a separate structure, which is passed to the function. All in all, the API changed quite a bit, but not dramatically. If you have question about migrating to the new API, let me know.
The special link feature is called off-mesh connections, not off-mesh links. The reason is that these special connections are actually stored as polygons. It allows the off-mesh connections to be nicely visible in the query functions. See the path iteration code in NavMeshTesterTool::recalc() for more details.
Next up is tile-to-tile connections, then better support for serialization, and after that I think I'll have another stab at the area stuff. Segment-to-segment off-mesh connections did not come out very naturally, the implementation ideas for that need a bit more simmering.