|
Axil_ww
| Дата: Вторник, 25.05.2010, 23:57 | Сообщение # 1 |
Молчун
Группа: Пользователь
Сообщений: 18
Статус: Offline
|
Кто нибудь знает как устроен алгоритм mp_potential_step ? Можно ли его написать самому ? Если ли готовые аналоги ?
|
| |
| |
|
WertyXBOCT
| Дата: Среда, 26.05.2010, 00:34 | Сообщение # 2 |
Каждый 5й пост мой
Группа: Страж
Сообщений: 2467
Статус: Offline
|
A*, A star, алгоритм Дейкстры, поиск пути, графы. Google.ru Algolist.manual.ru
Blog:www.WeslomPo.ru mailto: i@weslompo.ru
|
| |
| |
|
Axil_ww
| Дата: Среда, 26.05.2010, 01:02 | Сообщение # 3 |
Молчун
Группа: Пользователь
Сообщений: 18
Статус: Offline
|
Не не не А* и никаких графов и Дейкстров. Они находят оптимальный путь. А это не интересно. mp_potential_step - же упирается в препятствие и пытается его обогнуть, часто неправильно. Это-то и смешно. Не нагуглил ничего нового. Чтобы нагуглить нужно правильно запрос написать А то по "potential step" попадаются статьи по физики или про потенцию
|
| |
| |
|
Ang3L
| Дата: Среда, 26.05.2010, 01:43 | Сообщение # 4 |
Каждый 5й пост мой
Группа: Админы
Сообщений: 2667
Статус: Offline
|
Блин, ничего не нашёл лучше. Была статья классная про потенциальные пути да посеял. А по поиску действительно попадаются одна физика, да математика, ничего приближённого к действительности. Вот есть про поиски пути. Твой вопрос там вначале: Code Обход препятствий Перемещение в случайном направлении Трассировка вокруг препятствия Надежная трассировка Вот здесь кусочек про потенциальное поле: Quote Другим часто применимым методом поиска является метод потенциальных полей. В соответствии с этим методом каждое препятствие имеет вокруг себя отталкивающее потенциальное поле сила которого обратно пропорционально расстоянию до него. Также существует однородная сила притяжения к цели. Через близкие постоянные интервалы времени вычисляется сумма притягивающих и отталкивающих векторов и объект передвигается в этом направлении. Quote Вариацией метода потенциальных полей является метод виртуальных отталкивающих клеток изложенный в [5]. Его суть состоит в том, что игровое поле разделяется на клетки (поля) и если клетка содержит препятствие, она обладает отталкивающим потенциалом. Объект, для которого нужно найти путь представляется находящимся в центре квадрата стороны которого параллельны клеткам игрового поля. Если клетка с препятствием попадает внутрь квадрата, она производит отталкивающее действие, иначе нет. Результирующая сила вычисляется как сумма отталкивающих сил от клеток с препятствиями и притягивающей к цели силе. Таким образом устраняется влияние удалённых препятствий и отдалённых частей препятствий большого размера. В следствие этого, траектория движения получается более плавной. А! Вот нашёл. Про потенциальные поля [ENG]. Те кто англ. не знают помогут картиночки, они достаточно понятные. P.S.: В старых ГМ <=6 был текстовый файл со скриптом этого поиска (или похожего). Смысл в том что объект выбирает ближайшее движение к цели (т.е. всё что впределах 180 градусов от цели, иначе мы будем удалятся, что нельзя). Вот туда-то расстояние уменьшится и объект туда движется. Грубо говоря, мы выбираем случайное направление и смотрим приближает ли оно нас (сортируем расстояние)? Если приближает, то двигаемся туда (чем больше приближает, тем больше шансов что двинемся именно туда). Попадая в "яму" (локальный минимум) он пытается выбраться, но будет удалятся от объекта, что противоречит алгоритму и он тут же возвращается в "яму". И это нормально, а не глюк. P.P.S.: Всё только в теорий, кода не нашёл.
Blogpost
|
| |
| |