Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

 
Reply to this topicStart new topicStart Poll

Каскадный · [ Стандартный ] · Линейный

> Программизмы-2, Теперь со вкусом obstacle avoiding!

n-gamerqd
post Вторник, 02 июня 2009, 00:06
Отправлено #1


Безумец
*****

Группа: Пользователи
Сообщений: 581
Регистрация: 02 мая. 2007
Из: Санкт-Петербург
Пользователь №: 22 076





Вопрос прост. У нас есть координаты тела, его ширина и длина. Тело - прямоугольник. Есть простенький алгоритм, обсчитывающий столкновения, умеет возвращать направление столкновения (каким боком или углом уперлись). Реализован еще более простенький механизм обхода препятствий - на резуьтат работы k=collisionCheck() (функция проверки столкновений, далее - сС), отличный от нуля вызывается avoidObstacle(k) (обход препятствий,далее - aO), в которую оное k передается. аО, в свою очередь, в зависимости от цифры выбирает по правилу правой руки следующий шаг, выполняет его и забускает сС, если же обнаруживается невозможность шага, то он отменяется и вр екурсионном порядке вызывается aO (еще раз). Проблема алгоритма - в отсутствии обработки множественных столкновений и определенной глючности.

Естьу кого идеи? Может, ссылки на полезные статьи?Только, желателно, без математически извращенных решений типа графовых алгоритмов поиска путей или перехода на кинематическую модель движения в игре. Это будет совсем неуместно, ибо данный блок АИ пишется для зомби, и необходимости в сложных действиях нет и не предвидится.


--------------------
+1 ZZZEEE +1 Zerg1984
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
quasist
post Вторник, 02 июня 2009, 05:18
Отправлено #2


Sing along at the Opera
Group Icon

Группа: Профи
Сообщений: 3 391
Регистрация: 06 янв. 2006
Пользователь №: 14 791





Сделай лучше независимые движения по осям. И очень рекомендую кинематическую модель, так как когда зомбей много они будут толкаться между собой smile.gif


--------------------
12 удачных сделок в барахолке gbx.ru
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
n-gamerqd
post Среда, 03 июня 2009, 00:30
Отправлено #3


Безумец
*****

Группа: Пользователи
Сообщений: 581
Регистрация: 02 мая. 2007
Из: Санкт-Петербург
Пользователь №: 22 076





Независимое по осям - т.е. тело двигается по вектору, полученному суммой двух, лежащих на осях x и y? Тогда так и сделал уже. А вот кинематика мне и самому импонирует, но переносить весь проект на нее - убиться можно.




--------------------
+1 ZZZEEE +1 Zerg1984
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Сб., 27 апр. 2024, 11:45
Skin Designed (c) by Rooq.net, All Rights Reserved.