Вторник, 07 Апреля 2020, 20:48

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Модератор форума: beril  
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » И снова NavMeshAgent!
И снова NavMeshAgent!
BassPiraT92Дата: Воскресенье, 15 Марта 2020, 21:58 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Подскажите как изменить скорость вращения объекта при движении через NavMesh? Персонаж медленно поворачивается на поворотах из за чего это смотрится убого!
drcrackДата: Понедельник, 16 Марта 2020, 10:44 | Сообщение # 2
старожил
Сейчас нет на сайте
angular speed, прямо под speed...

PS вопрос чет жесть совсем, по английски хотя бы до 10 умеешь считать?..


Сообщение отредактировал drcrack - Понедельник, 16 Марта 2020, 10:45
BizzyДата: Понедельник, 16 Марта 2020, 10:52 | Сообщение # 3
постоянный участник
Сейчас нет на сайте
Проще дернуть из агента точки пути и самому по ним вести и поворачивать. Как-то так:

Код

NavMeshPath navMeshPath = new NavMeshPath();
agent.CalculatePath(target, navMeshPath);
return navMeshPath.corners;


drcrackДата: Понедельник, 16 Марта 2020, 11:16 | Сообщение # 4
старожил
Сейчас нет на сайте
Цитата
Проще

Каким образом получается что пихать глупые костыли в код проще, чем поменять дефолтное значение 120 (т.е. 3 секунды на полный оборот) на скажем 3600?
BizzyДата: Понедельник, 16 Марта 2020, 13:42 | Сообщение # 5
постоянный участник
Сейчас нет на сайте
Цитата drcrack ()
Каким образом получается

А получается так что ты хоть 1000000 задай в Angular speed, все равно будет медленно поворачиваться. Angular speed это максимальная скорость поворота, а не заданная, которая еще зависит от скорости и ускорения - поэтому эта скорость поворота не достигается. Проверь сам, убедишься в этом. Таким образом приходиться "пихать глупые костыли".


IlyaKosДата: Понедельник, 16 Марта 2020, 13:46 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Согласен, лучше получить corners и самому контролировать перемещение.
InsaneSystemsДата: Понедельник, 16 Марта 2020, 14:03 | Сообщение # 7
участник
Сейчас нет на сайте
Bizzy, плюс к этому, насколько я знаю, скорость NavMeshAgent не соответствует обычному speed * Time.deltaTime, что может в какой-то момент подкинуть ТСу сюрприз, если он будет юзать стандартный агент. :D Но так-то увеличить скорость поворота всё же проще.
BizzyДата: Понедельник, 16 Марта 2020, 14:21 | Сообщение # 8
постоянный участник
Сейчас нет на сайте
Цитата InsaneSystems ()
Но так-то увеличить скорость поворота всё же проще.

В том то и дело, что не проще через Angular speed увеличивать скорость. Еще раз напишу, проверьте, разворот на 180 будет очень медленный. (забавно смотрится перс который начинает бежать вперед, а двигаться назад)


BassPiraT92Дата: Понедельник, 16 Марта 2020, 20:34 | Сообщение # 9
почетный гость
Сейчас нет на сайте
drcrack, ну я там выставлял бешеные цифры и результата не было!
Цитата Bizzy ()
Еще раз напишу, проверьте, разворот на 180 будет очень медленный. (забавно смотрится перс который начинает бежать вперед, а двигаться назад)

В точку!
drcrackДата: Вторник, 17 Марта 2020, 00:58 | Сообщение # 10
старожил
Сейчас нет на сайте
да, вспомнил, были какие-то проблемы с этим
но точно было какое-то простое решение
возможно нужно просто поднять acceleration
BizzyДата: Вторник, 17 Марта 2020, 10:59 | Сообщение # 11
постоянный участник
Сейчас нет на сайте
Цитата drcrack ()
да, вспомнил, были какие-то проблемы с этим
но точно было какое-то простое решение
возможно нужно просто поднять acceleration

Да? Тогда ждем от тебя простое решение...


k0feДата: Вторник, 17 Марта 2020, 12:50 | Сообщение # 12
BRONX
Сейчас нет на сайте
Да, можно просто повысить значение ускорения и подкрутить angular, но стоит опираться от желаемого результата.

мой стрим, который я редко включаю, но зато на нём я делаю игры
drcrackДата: Вторник, 17 Марта 2020, 15:41 | Сообщение # 13
старожил
Сейчас нет на сайте
Цитата
Да? Тогда ждем от тебя простое решение...

ты после второй строки бросился ответ писать и забыл дочитать? :D
BizzyДата: Вторник, 17 Марта 2020, 18:26 | Сообщение # 14
постоянный участник
Сейчас нет на сайте
Цитата k0fe ()
Да, можно просто повысить значение ускорения и подкрутить angular, но стоит опираться от желаемого результата.

Как не подкручивай, все равно разворот медленный и плавный. Так что подкрутками быстрого разворота не добиться.

Цитата drcrack ()
ты после второй строки бросился ответ писать и забыл дочитать?

Я в действительности жду от тебя простого решения для быстрого разворота.


Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » И снова NavMeshAgent!
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2020 Рейтинг