делишь пространство на полигоны, грани полигонов юзаешь чтоб построить граф, по которому пиздовать, поиск по графу даёт путь, который превращается в "пройти через эти грани полигонов", можно тюнить, чтоб углы срезать, или наоборот, посредине пути идти