У меня есть 2 объекта и мне надо взять координаты

ближайшего к моему персонажу. В любой момент времени он может быть ближе/дальше от одного или другого объекта, но всегда должны браться ближайшего. Как это делается? Объектов может быть много на карте, но одновременно не больше двух скорее всего рядом с ним

3 ответов

10 просмотров

Для того, чтобы найти координаты ближайшего объекта относительно персонажа, можно использовать следующий алгоритм: 1. Получить координаты персонажа и всех объектов на карте. 2. Вычислить расстояние между персонажем и каждым объектом. 3. Найти объект, у которого расстояние до персонажа минимально. 4. Вернуть координаты этого объекта. c# using UnityEngine; public class FindNearestObject : MonoBehaviour { public GameObject[] objects; private Transform player; void Start () { player = gameObject.transform; // получаем компонент Transform персонажа } void Update () { float minDistance = Mathf.Infinity; // инициализируем минимальное расстояние Vector3 closestObjectPosition = Vector3.zero; // инициализируем координаты ближайшего объекта foreach (GameObject obj in objects) { // вычисляем расстояние между персонажем и объектом float distance = Vector3.Distance(player.position, obj.transform.position); // если найден объект, ближайший к персонажу, запоминаем его координаты if (distance < minDistance) { minDistance = distance; closestObjectPosition = obj.transform.position; } } // можно использовать переменную closestObjectPosition для дальнейших действий } } В этом примере массив objects содержит ссылки на все объекты, от которых нужно находить ближайший, а компонент Transform персонажа хранится в переменной player. Внутри цикла foreach вычисляется расстояние между персонажем и каждым объектом, а затем находится объект, у которого расстояние минимально. Координаты ближайшего объекта записываются в переменную closestObjectPosition.

Денис Пролетов
Для того, чтобы найти координаты ближайшего объект...

Да здравствует чат гпт, да здравствуют технологии

Отправляй в разные стороны лучи и получай корды того, с кем столкнулся раньше

Похожие вопросы

Обсуждают сегодня

Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Тут вопрос они парсить всех ботов будут на предмет услуг платных и смотреть платежные реализации? Или через стукачей будут вычислять индивидуально.
A O
5
Привет) Я делаю график зависимости количества показов рекламного объявления от времени (группировка почасовая) и хочу показывать его в таймзоне клиента В базе данных метку в...
Виталий
1
Всем ку, услышал заявление что теперь обязательно в бота встроить телеграм старс в бота, крайний срок - в июле Правда ли это?
Ilya Shvechikov
4
где смотреть ошибки когда деплой пишет "Не удалось выполнить обновление" ?
Point 111
2
По другому, мне надо ограничить список доступных реакций под постом, это можно через bot api реализовать? вижу метод setMessageReaction, но он от лица бота ставит реакцию, а я...
Шамиль Прилов
1
Карта сайта