Центрировать позицию дочернего объекта

Программирование на Юнити.

Центрировать позицию дочернего объекта

Сообщение nazar79 14 апр 2018, 15:40

Нужна помощь в выравнивании объектов по одной оси
Ниже скрин проблемы. Красной стрелкой отмечен нормальный вариант.
Мяч все время крутится. По щелчку в синей области создается объект (квадрат) с координатами курсора. Дальше он движется благодаря movetowards к мячу. При столкновении квадрат становится дочерным к мячу, а если столкнулся с квадратом, то дочерным к нему. Суть вопроса в том, чтоб выровнять квадраты по оси как в варианте с стрелкой. Если вариант с movetowards для движения не совсем хороший, то готов выслушать варианты.
https://vk.com/feed?section=comments&w=wall-21398398_550191 по ссылке можно посмотреть изображение и вариант от пользователя.
nazar79
UNец
 
Сообщения: 8
Зарегистрирован: 14 апр 2018, 15:38

Re: Центрировать позицию дочернего объекта

Сообщение 1max1 14 апр 2018, 19:40

transform.localPosition = sqr.transform.up * offset * count;

transform.localPosition - это трансформ нового квадрата прикрепленного к тому с которым столкнулся, sqr - это квадрат-родитель, где sqr.transform.up смотрит в противоположную торону от центра, offset - расстояние(высота квадрата) на которое нужно сместить положение нового квадрата умноженное на количество уже прикрепленных квадратов.
Аватара пользователя
1max1
Адепт
 
Сообщения: 1632
Зарегистрирован: 28 июн 2017, 10:51

Re: Центрировать позицию дочернего объекта

Сообщение nazar79 14 апр 2018, 21:15

Или моя система плохая или ошибка в Вашем примере. Оно не корректно смещает объекты. Вообще на вторую сторону переносит
nazar79
UNец
 
Сообщения: 8
Зарегистрирован: 14 апр 2018, 15:38

Re: Центрировать позицию дочернего объекта

Сообщение 1max1 15 апр 2018, 00:38

Что такое вторая торона?
Аватара пользователя
1max1
Адепт
 
Сообщения: 1632
Зарегистрирован: 28 июн 2017, 10:51

Re: Центрировать позицию дочернего объекта

Сообщение nazar79 15 апр 2018, 08:01

Примерно так оно работает. Красные кубики это уже когда столкнулись 2 кубика
http://vfl.ru/fotos/02ed9a6021377417.html изображение, почему-то не удалось толково загрузить
nazar79
UNец
 
Сообщения: 8
Зарегистрирован: 14 апр 2018, 15:38

Re: Центрировать позицию дочернего объекта

Сообщение 1max1 15 апр 2018, 08:06

А ты не мог бы сюда проект свой загрузить, думаю так проще будет)
Аватара пользователя
1max1
Адепт
 
Сообщения: 1632
Зарегистрирован: 28 июн 2017, 10:51

Re: Центрировать позицию дочернего объекта

Сообщение seaman 15 апр 2018, 09:19

Синтаксис:
Используется csharp
transform.localPosition = sqr.transform.localPosition  + sqr.transform.up * cubeSize;

Это если кубик не вращается в полете. Ну и изначально его up должен быть направлен от центра шара.

Если эти условия не выполняются можно попробовать получить locarRotation у sqr, удочерить кубик шару и установить у него locarRotation таким же как у sqr. Умозрительно должно помочь, но надо проверять.
seaman
Адепт
 
Сообщения: 7535
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Центрировать позицию дочернего объекта

Сообщение nazar79 15 апр 2018, 10:07

seaman писал(а):
Синтаксис:
Используется csharp
transform.localPosition = sqr.transform.localPosition  + sqr.transform.up * cubeSize;

Это если кубик не вращается в полете. Ну и изначально его up должен быть направлен от центра шара.

Если эти условия не выполняются можно попробовать получить locarRotation у sqr, удочерить кубик шару и установить у него locarRotation таким же как у sqr. Умозрительно должно помочь, но надо проверять.


В том то и дело, что когда кубик стает дочерным он начинаете вращаться вместе с мячом
nazar79
UNец
 
Сообщения: 8
Зарегистрирован: 14 апр 2018, 15:38

Re: Центрировать позицию дочернего объекта

Сообщение seaman 15 апр 2018, 19:29

И что? Он что не должен с ним вращаться?
seaman
Адепт
 
Сообщения: 7535
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Центрировать позицию дочернего объекта

Сообщение 1max1 15 апр 2018, 19:59

Думаю он уже решил проблему)
Аватара пользователя
1max1
Адепт
 
Сообщения: 1632
Зарегистрирован: 28 июн 2017, 10:51

Re: Центрировать позицию дочернего объекта

Сообщение nazar79 15 апр 2018, 20:59

Ну как я, не совсем я)
Тему можно закрывать благодаря 1max1
nazar79
UNец
 
Сообщения: 8
Зарегистрирован: 14 апр 2018, 15:38


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11