Показать сообщение отдельно
Старый 01.04.2010, 08:26   #1
Пользователь
 
Регистрация: 22.04.2009
Сообщений: 72
Сказал Спасибо: 25
Имеет 19 спасибок в 9 сообщенях
Lynx пока неопределено
По умолчанию Обход препятствий ботом

Здравствуйте! Недавно заинтересовался проблемой поиска пути.
Хотел сначала заюзать алго A*, но у него есть свои минусы. А именно
Неестественное движение(имхо главный-), ресурсоёмкость, ему требуется неподвижность препятствий и цели(с первым проблем не должно быть, со вторым будут.) ну и сложность реализации(для меня).
Плюсы-всегда находит путь.
Короче почитал на эту тему, нашёл другой выход
_http://aigamedev.com/open/tutorials/potential-fields/
короче суть в том, что вокруг препятствий как бы генерируется отталкивающее поле(которое рассеивается пропорционально расстоянию), а цель генерирует притягивающее поле, которое не рассеивается. Мы с какой-то периодичностью считаем направление равнодействующей, и идём в ту сторону.
Немного изменил его. Вот что уже получилось. Да, иногда застревает, но я уже придумал выход.
http://slil.ru/28890290 ПРИМЕР
собирал в freePascal. Управление: при запуске exe появляется окно и консоль. Так вот ставим переключаемся на консоль и на A S D W двигаем цель, на Q выход(смотрим во 2 окно=)).
Вопросы: к какому боту это приделать? К Sky или к локомотиву? других вроде бы нет?


Добавлено через 13 часов 44 минуты
теперь не застряёт)

Последний раз редактировалось Lynx, 01.04.2010 в 08:26. Причина: Добавлено сообщение
Lynx вне форума   Ответить с цитированием
За это сообщение Lynx нажился 2 спасибками от: