Tuesday, June 30, 2009

Recast and Detour 1.21

Small maintenance update to Recast. There is no new functionality, but I refactored the GUI and demos.

I noticed that I will need to add yet another, yet slightly different, way to build the data for my current endevour of making a tile based navmesh fro Detour. The current demo is getting too complicated. So I went and refactored the GUI and the generation code that it is easier to create new ways to create and use the data. The Recast API will stay the same, but the way the data is passed to the new Detour stuff will be different and I want to create functional tests for the new code too.

If you are new user to Recast, take a look at BuilderStatMeshSimple.cpp it should get you started how to integrate Recast into your own code. BuilderStatMesh.cpp should give you an idea how to use Detour static navigation meshes. If you want to generate navmesh for larger areas, check out the tiling examples.

Now that the GUI refactoring is done, I can continue adding tiled navigation mesh support for Detour. The idea is that the whole navmesh is composed of several pieces. Just like the tiled preprocessing generates them. These pieces can then be added and removed at runtime creating the basic structure of streaming the navmesh or generating new tiles at runtime.

I have pretty solid plan how to go forward with it. I plan to support the same API as the dtStatNavMesh has, plus some extra functions to add and remove the mesh tiles. I will (slowly) work towards that goal this summer.