I’ve made some progress, here are some WIP screenshots :


Here are some sketches of the algorithm I have currently implemented :

I take each node of the GridGraph one by one, and I test its walkability against 3 of its neighbors. I compute 2 cases (red dots are unwalkable nodes, green are walkable).

Then, I apply the same pattern 3 more times but with 90 degrees rotation.

Finally, I’ve tested 8 possibilities per node.
This solution produce 2590 RVOObstacle for a slightly modified Example2_Terrain scene (341 for the navmesh based Example11_RVO scene).
My actual RVOGridGraph.AddGraphObstacles() method is only 100 lines long. I don’t know if merging lines of RVOObstacle is worth the effort. This node based approach let me think it could be compatible with partial Graph update…