![]() |
Ответ: Искуственный интеллект
Не обижайтесь, но с вами говоришь как со стенкой, вам одно, вы другое.
Может я чтото не понимаю... У меня нет коридоров, чтобы поставить две точки одну в начале, другую в конце. У меня остров, ростут пальмы, т.е. появляются преграды. У меня изначально не неда никаких вейпоинтов. Понимаю когда есть помещение, надо нцп знать где есть проход а где нет. У меня то наоборот, надо знать где нельзя пройти. Ребят, ну подскажите ответы на вопросы ниже, я не могу гуглить, у меня скорость 32 кб/сек. - не издевайтесь ) Цитата:
|
Ответ: Искуственный интеллект
Не осилил весь код, некогда, мне хватило Dim. Перепиши на куче (а лучше посмотри готовый пример), и получишь ускорение на несколько порядков.
Я сам писал a* через массив, вышло ооочень медленно. Типа того, что на карте 512х512 был поиск несколько секунд. |
Ответ: Искуственный интеллект
Цитата:
|
Ответ: Искуственный интеллект
Тебе ответили - A* с выделением памяти на куче.
Не хочешь делать нормально, бери Пик, Коллизии, делай тесты. А потом я нарисую тебе пример, на котором твое прогнозирование загонит бота в тупик или цикл. |
Ответ: Искуственный интеллект
ок ;)
Да я не против пользоваться таким методом, но мне кажется для начинающего должно быть чтото попроще... И не понял что означает выделение памяти на куче Блин, мне так и не подсказали как в типе сделать подтип. Чтобы к нцп добавлять вейпоинты. |
Ответ: Искуственный интеллект
Кучи, это читать в хелпе про Heap. Блитц у меня не стоит уже лет 7, так что точнее не скажу. Кстати, вспомнил про еще более классную штуку, к тому же совсем свежую: http://habrahabr.ru/post/162915/
Подтипов тут нет честных, не могу найти правильную ссылку, импер подскажет. |
Ответ: Искуственный интеллект
burovalex
Не тупи, у тебя есть карта растительности - юзай ее для построения графа для поиска пути Астаром или волновым методом. Точнее ты можешь по этой карте построить регулярную сетку ( массив ) на которой будут отмечаться проходимые и непроходимые участки ( да, можно риалтайм ), а чтобы не тормозило на больших картах - выпрямляй руки, учи матчасть или юзай уже готовые реализации алгоритмов поиска пути :) |
Ответ: Искуственный интеллект
Как-то скачал сборку примеров на Блитце, там как раз было 2 с А* алгоритмом. Только я не могу найти(
|
Ответ: Искуственный интеллект
Ну даже, чтобы пользоваться Астаром, надо научиться пользоваться подтипами. С чем у меня пока проблемы, вкурить не могу..
Цитата:
|
Ответ: Искуственный интеллект
Оченно рекомендую библу Дипломата:
http://forum.boolean.name/showthread...080#post251080 Юзал для стратегии и шутера - работает отменно и с статикой и динамикой. сотня юнитов шустренько шныряет по уровню с узкими коридорами, не сталкиваясь и не застревая. |
Ответ: Искуственный интеллект
Можно использовать волновой алгоритм. Это наверно самый простой поиск пути в плане реализации.
http://pmg.org.ru/ai/path.htm |
Ответ: Искуственный интеллект
Вот для свой игрушки тоже ищу нахождение пути только вот мне нужно сделать нахождение по вей поинтам
тоесть расставил точки по карте а в функции обновления нпс просто повернуть и толкать до ближайшей точки в варианте tormoz,а таковых точек не заметил но увидел что надо показывать где стены а на большой карте с кучей домов и разных интерьеров таковой возможности нет еслть ли такие библиотеки работающие по вышеописанному принципу |
Ответ: Искуственный интеллект
Цитата:
Твоя задача передать в длл сетку проходимости. Разбиваешь уровень на клетки со стороной в одного юнита. Заполняешь массив по проходимости. Передаешь в пп. Все. Заполнять сетку можно заранее, например нарисовать битмап проходимости, где пиксель -клетка сетки, или получить в коде, пикая уровень по сетке, дифференцируя по высоте\имени и тп. Дополнить карту можно самими юнитами в динамике. Далее передаешь начальную и конечную точку пути пп возвращает координаты вейпойнтов по которым двигается юнит (в формате сетки). см. примеры в архиве. |
Ответ: Искуственный интеллект
ну сетка это всего лишь частный случай графа, где каждый узел связан с еще 4 (или 9 чтобы ходили по диагонали) узлами, не вижу проблем брать за граф карту вейпоинтов, просто кто будет учить дискретную математику для этого ? все ищут простого решения, геймдевелоперы блин
|
Ответ: Искуственный интеллект
Цитата:
|
Часовой пояс GMT +4, время: 06:58. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot