Поиск пути в сеточной системеC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Поиск пути в сеточной системе

Сообщение Anonymous »

Сейчас я создаю небольшую сеточную игру на C++ с использованием SDL. Я создал класс тайлов, который представляет каждый отдельный тайл на карте. Этот класс плиток используется в двухмерном векторе, одно измерение представляет ось X, а другое – ось Y.

У меня проблема с алгоритмом, да. даже не знаю с чего начать, допустим у меня есть вот такая карта:

Код: Выделить всё

0 0 1 1 0 E
0 0 0 1 0 1
0 C 0 1 0 1
0 1 0 1 0 1
0 1 1 1 1 1
C — мой персонаж, E — выход, а 1 — плитка пола.

Я бы хотел чтобы найти наиболее оптимальный способ выяснить, есть ли у персонажа способ добраться до выхода. Я знаю, что могу использовать функцию для ручной проверки каждой плитки вокруг C, и для каждой плитки пола вокруг C я снова проверяю каждую плитку вокруг, пока не найду последовательный путь, ведущий к E, но это кажется не очень оптимальным.

Могу ли я иметь подсказку или какое-то направление, в котором мне ориентироваться?

Подробнее здесь: https://stackoverflow.com/questions/191 ... rid-system
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»