Valve put up documentation describing their tech behind Left for Dead 2. It’s interesting to see how they solved the issue whereas the navmesh polygons will give you a jagged path.
Currently in GODZ the Bot AI will use a jagged path to chase the player down. However soon I hope to upload a new build that smooths out the path to make the AI look a bit more natural
Been working on porting over the old godz win32 editor over to C# which has been going pretty well so far. I was basically faced with the choice of using either MFC or C# if I wanted to make the UI more current. Choose C# due it’s nice, clean interface and updated components.
The managed editor interfaces with the unmanaged DLL passing pointers back and forth via IntPtrs, etc. Unmanaged objects are wrapped by proxies on the C# side of the fence. All of the engine functions are exposed as C functions so their names do not get mangled. [UPDATE: No longer using this method. Now the Managed C++ code exposes everything to the C# layer]. Levels can be put together in pieces that can be streamed / unloaded during runtime seamlessly. The goal, as always, is to never force the user to sit idle while resources load. So, if you need to load a package, etc you can start the operation and do something else as the package loads in the background
The engine can now generate a Navigationmesh based on a collision mesh that’s passed into it. Once the navmesh is constructed, it can be passed to multiple AI threads which can asynchronously access the navmesh and plan their path navigation using an A* algorithm I just cranked out last night. Currently, I have a bot that will follow me around whereever I go as a simple test
After I’m fairly sure everything is stable, etc I’ll upload a new demo.