Сам скрипт подготовлен, так же уже есть массив где проходимые точки а где нет (типа стены), вот так он у меня выглядит
от все взято -
https://programm.top/c-sharp/algorithm/search/dijk...
spoilervar g = new Graph();
float x = 0f;
float y = 0f;
foreach(KeyValuePair<int, ObjectVerifyWall> kv in ArrayPossibleMove){
if(kv.Value.GetPossibleMove()){
kv.Value.GetComponent<SpriteRenderer>().color = new Color(0f, 1f, 0f, 1f); // проходимая область
x = kv.Value.transform.position.x;
y = kv.Value.transform.position.y;
g.AddVertex(x+"x"+y); // так вот думаю вершины добавить
}else kv.Value.GetComponent<SpriteRenderer>().color = new Color(1f, 0f, 0f, 1f); // стена
}
Сама карта 50x50 с шагом 0.5, то есть вот каждый префаб ObjectVerifyWall 0.5 на 0.5, доска начинается от -25,-25 и заканчивается 25,25
вот теперь думаю как правильнее графы сделать?
От например -25,-25 проводить до -25,-24 | -25,-23 | -25,-22 .....
g.AddEdge("-25x-25", "-25x-24", 1);
g.AddEdge("-25x-25", "-25x-23", 2);
g.AddEdge("-25x-25", "-25x-22", 3);
и так далее...
дофига ребер получится...
Может как-то правильнее, грамотнее это дело нужно делать?