У меня вопрос, как сделать инициализацию объектов на сцене, чтобы

они не пересекались?

28 ответов

16 просмотров
NaNaNaS- Автор вопроса

Я нашёл OverlapBox, но не смог примени с клонами

если разные то слои

NaNaNaS- Автор вопроса
NaNaNaS- Автор вопроса

Кто-нибудь может что-то посоветовать?

NaNaNaS- Автор вопроса

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

NaNaNaS
Объекты размещаются по рандомным позициям, но толь...

Ничего не понятно. Тебе нужно, чтобы созданные ГО не могли пересекаться или что?

NaNaNaS- Автор вопроса
NaNaNaS
Да, мне нужно то что ты описал

Теперь опиши что ты подразумеваешь под "не пересекаются"

NaNaNaS- Автор вопроса
Rusya
Теперь опиши что ты подразумеваешь под "не пересек...

Чтобы спрайты не налезали друг на друга

NaNaNaS- Автор вопроса
NaNaNaS- Автор вопроса
Rusya
И?

Не работает через Instantiate если делать

NaNaNaS
Не работает через Instantiate если делать

Причем тут Instantiate? На префаб добавь коллайдер

NaNaNaS- Автор вопроса
NaNaNaS- Автор вопроса

У меня появляется определённое количество спрайтов на рандомных позициях по оси x, они часто при появлении пересекают другие спрайты

NaNaNaS
У меня появляется определённое количество спрайтов...

Создай список точек(Vector3). Первую создаёшь где угодно(хоть рандомно), делаешь рандомный шаг для этой точки + ширина спрайта. После создаёшь спрайт и ставишь их в заранее определенные точки

NaNaNaS
У меня появляется определённое количество спрайтов...

После создания объекта записываешь в список позицию нового объекта. Перед созданием объекта вычисляешь новую позицию так - если новая рандомная позиция ближе к любой позиции из списка чем размеры этого объекта тогда вычисляешь еще раз. И так до тех пор пока не найдешь новую позицию которая не пересекается с предыдущими

NaNaNaS- Автор вопроса
Stanislav
После создания объекта записываешь в список позици...

Спасибо за такой развернутый ответ, я думал про это, теперь попробую, но когда гуглил, там сразу вышло OverlapBox, я пытался её применить и не смог, можно ли как-то с этой функцией сделать?

NaNaNaS
Спасибо за такой развернутый ответ, я думал про эт...

открой доку юнити и посмотри параметры вызова у OverlapBox если вернет тебе какой-то коллайдер значит там есть кто-то

NaNaNaS- Автор вопроса
Arcueid Elizabeth D'athemon
открой доку юнити и посмотри параметры вызова у Ov...

Эту функцию получилось вызвать только для объекта, к которому привязан скрипт с ней, а для префабов не смог написать

NaNaNaS
Спасибо за такой развернутый ответ, я думал про эт...

По сути можно. Но это значит что ты будешь перемещать объект после создания если пересекается с кем то. Мне кажется корректнее перед созданием выбрать место и создавать его там где надо сразу

NaNaNaS- Автор вопроса
Arcueid Elizabeth D'athemon
префаб заспавнить надо сначала

Знаю, но как вызвать Physics2d.OverlapBox(.....) для какого то объекта

NaNaNaS- Автор вопроса
Stanislav
По сути можно. Но это значит что ты будешь перемещ...

Мне просто уже интересно стало, получиться этим способом сделать

NaNaNaS
Знаю, но как вызвать Physics2d.OverlapBox(.....) д...

позицию передать в какой проверять

NaNaNaS
Что?

ты читал параметры который передаются в метод?

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

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

Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
разработчик ботов скидывает портфолио, боты которые он уже создал. А вот как узнать что это именно он их создал?
Gosudar
4
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Карта сайта