| Расстояние до объекта. Как вычислить что лучше. | 
|  | 
| 
| Mofrez | Дата: Вторник, 21 Сентября 2021, 19:34 | Сообщение # 1 |  | был не раз Сейчас нет на сайте | Хочу чтобы мобы c компонентом Navmeshagent наносили урон игроку когда подойдут близку. Знаю поверхностно про Vector3.Distance, Physics.CheckSphere и триггеры. Что лучше применять для лучшей оптимизации? remainingDistance не подходит в моем случае |  |  |  |  | 
| 
| Core | Дата: Вторник, 21 Сентября 2021, 22:38 | Сообщение # 2 |  |   заслуженный участник Сейчас нет на сайте | Mofrez, Я в Unity не силен, но могу сказать, что просчет луча будет более оптимизирован, чем просчет целой сферы и постоянной проверки нахождения объекта внутри радиуса сферы. Но стоит заметить, что в случае если тебе нужно проверить дистанцию реально большого коль-ва объектов относительно точки, лучше все-таки использовать Physics.CheckSphere так-как одна сфера будет лучше чем 100500 лучей. 
 Ps Но это не точно. Мыслю чисто по логике. Возможно, что в Unity есть какие-то свои нюансы, и я их не знаю)
 
 Игры: justcore.itch.io
 Сайт: justcore.space
 |  |  |  |  | 
| 
| GameDev2 | Дата: Среда, 22 Сентября 2021, 22:42 | Сообщение # 3 |  | почетный гость Сейчас нет на сайте | Вот он современный подход, уже нет простого расчёта координат. Игра 3D? |  |  |  |  | 
| 
| Spring | Дата: Четверг, 23 Сентября 2021, 09:19 | Сообщение # 4 |  |   частый гость Сейчас нет на сайте | Physics.CheckSphere не знаю, триггеры тоже самое. Vector3.Distance не рекомендую, не оптимизирован. Более оптимизированный способ это Vector3.sqrMagnitude(учитывайте что расстояние будет в квадрате) или создать собственное вычисление.
 |  |  |  |  | 
| 
| drcrack | Дата: Четверг, 23 Сентября 2021, 18:24 | Сообщение # 5 |  | старожил Сейчас нет на сайте | Vector3.Distance подойдет для большинства случаев. Не надо ничего "оптимизировать" через sqrMagnitude пока профайлинг не покажет что узкое место действительно в вычислении расстояния. 
 
 Сообщение отредактировал drcrack - Четверг, 23 Сентября 2021, 18:28 |  |  |  |  | 
| 
| Burnout | Дата: Суббота, 25 Сентября 2021, 20:27 | Сообщение # 6 |  | был не раз Сейчас нет на сайте | Цитата drcrack (  )  Vector3.Distance подойдет для большинства случаев. Не надо ничего "оптимизировать" через sqrMagnitude пока профайлинг не покажет что узкое место действительно в вычислении расстояния.Скорее всего да.
 Но никто не мешает где нибудь в конструкторе возвести дистанцию до удара в квадрат и сравнивать ее с sqrMagnitude.
 Но если врагов не сотни одновременно, скорее даже тысячи, то все равно.
 
 
 |  |  |  |  |