Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / [Решено]Navigation mesh (3 стр)

[Решено]Navigation mesh (3 стр)

Поделиться
Advanced: Тема повышенной сложности или важная.

Страницы: 1 2 3 4 5 Следующая

robotcityПостоялецwww10 авг. 201623:22#30
Aroch
а направление он как посчитает, без точных координат?
ArochПостоялецwww11 авг. 20160:14#31
robotcity
точных координат чего? Персонажа? Элементарно спроецирует на ближайший свой узел (триангл) и начнет оттуда считать. Даже если персонаж будет за пределами навмеша где-то далеко, всё равно можно найти ближайшую точку и начинать строить путь от него. Если разница слишком большая можно телепортнуть персонажа к точке которой выдал навмеш (вдруг из-за бага/читов улетел за пределы карты), а дальше его физика приземлит.
robotcityПостоялецwww11 авг. 20169:15#32
Aroch
Ты писал что мешу все равно на какой он высоте, напрвление им передаваемое от высоты не зависит получается?
Просто у тебя столько противоречий, подумай как можно создать вектор направления без координат?
DampireПостоялецwww11 авг. 20169:40#33
robotcity
В проекцию на плоскость не умеешь? Ну ок, ок...
robotcityПостоялецwww11 авг. 20169:46#34
Dampire
что именно я должен проецировать на плоскость, вектор направления? и что мне это даст? вектор направления на плоскости, хммм, ну ок..... Тоесть теперь у нас есть плоскость обозначенная координатами (я знаю только одну формулу которая описывает плоскость в просттранстве и для нее нужна точка и нормаль), и вектор наапрвления, хммм... только я не понял почему вы думаете что высота меша не имеет значение?

Правка: 11 авг. 2016 9:49

DampireПостоялецwww11 авг. 201610:57#35
Скачай любую navmesh библиотеку и посмотри как ей пользоваться. Точка.
robotcityПостоялецwww11 авг. 201611:20#36
Dampire
Ты уже это говорил, если нечего добавить то не надо встревать в разговор, точка.
DampireПостоялецwww11 авг. 201612:14#37
robotcityПостоялецwww11 авг. 201615:15#38
Dampire
классика, ну раз ты так умен подскажешь тогда какие библиотеки надо посмотреть, или скинешь код который можно посмотреть, только не надо меня в гугл отправлять.

Правка: 11 авг. 2016 15:15

ArochПостоялецwww11 авг. 201616:14#39
robotcity
> Ты писал что мешу все равно на какой он высоте, напрвление им передаваемое от
> высоты не зависит получается?
зависит, но если у тебя несколько этажей и это всё равно проблемы не создаст, найдется ближайший узел с нужным этажом.
> Просто у тебя столько противоречий, подумай как можно создать вектор
> направления без координат?
не тупи, координаты у физ движка, у навмеша при расчетах свои координаты после проекции, которые физ движку до лампочки если они не расходятся на слишком большую дельту, если разойдутся то телепорт. (случай вылета за карту).
> тогда какие библиотеки надо посмотреть
Recast, Navpower (за $).
robotcityПостоялецwww11 авг. 201616:20#40
Aroch
> не тупи, координаты у физ движка, у навмеша при расчетах свои координаты после
> проекции, которые физ движку до лампочки если они не расходятся на слишком
> большую дельту, если разойдутся то телепорт. (случай вылета за карту).
координаты и там и тут одинаковые, navmesh строится поверх реальной геометрии, лучше буду тупить дальше.
забей все ясно, слишком у нас разные представления о том как устроен navmesh, у меня работает, если даже я придумал самый кривой и не правильный код, он работает.
ArochПостоялецwww11 авг. 201616:25#41
robotcity
> координаты и там и тут одинаковые,
не могут быть они одинаковыми, если у тебя не простейший 2d случай для которого и физика то не нужна. Сам подумай как ты реализуешь прыжок или падение с платформы?
robotcityПостоялецwww11 авг. 201616:36#42
Aroch
> у навмеша при расчетах свои координаты после проекции, которые физ движку до
> лампочки
я просто не понимаю причем тут физический движок в обсуждении navmesh, если navmesh не выдает путь построенный по реальным координатам пространства то персонаж уйдет не понятно куда, для меня это очевидно, и твое слова что navmesh все равно где стоит по высоте я вообще не понимаю, как персонаж будет ходит в 3eх мерном пространстве, библиотеки которые ты скинул работают по принципу реальных координат, скинь ту библиотеку в которой координаты navmesh работают по твоему описанному принципу.
robotcityПостоялецwww11 авг. 201616:47#43
Aroch
> Сам подумай как ты реализуешь прыжок или падение с платформы?
незнаю, просвети, честно, такие вещи я всегда реализовывал в обход navmesh.
ArochПостоялецwww11 авг. 201616:48#44
robotcity
еще раз, ты берешь реальные координаты актера из физ движка, передаешь в функцию поиска пути и передаешь координаты до куда строить путь. Навмеш может вернуть тебе список точек пути (для простоты пусть будут 1, 2, 3, 4, 5, можешь их сразу спроецировать на физ геометрию, можешь и без проекции). Далее тебе достаточно взять от первой пары точек направление (vec(2 - 1)), и начинать двигать актера в этом направлении с учетом уже физ. движка, как только актер достигнет точки 2 (тебе не нужно проверять на точное попадание, достаточно чтобы актер был в некотором радиусе от точки 2 (зависит от параметров навмеша, размеров актера и делали мы проекцию точек на физ. геометрию), после берешь след. направление vec(3 - 2) и продолжаешь в том же духе. В случае если физ. движок вытолкнет слишком далеко от маршрута (например актера снесло летящим в него булыжником или еще каким-то дин. объектом), нужно заново построить путь.

Страницы: 1 2 3 4 5 Следующая

/ Форум / Программирование игр / Игровая логика и ИИ

2001—2017 © GameDev.ru — Разработка игр