@Gwinterion

Как правильно задать позицию объекта относительно другого объекта?

У меня есть объект Container который я инстанцирую, после чего назначаю ему позицию с помощью метода SetPosition
public void SetPosition(GameObject itemButton)
    {
        Vector2 position;
        position.x = itemButton.GetComponent<RectTransform>().transform.position.x;
        position.y = itemButton.GetComponent<RectTransform>().transform.position.y + 50;
        Container.transform.position = position;

    }

Я хочу что-бы Container появлялся на позиции объекта itemButton с небольшой поправкой по оси Y. Координаты Container по оси X задаются корректно, а вот по оси Y он оказывается далеко за пределами экрана. Если размещать его не делая поправку, то всё работает нормально. В чём проблема? 620c566927155966780349.png
  • Вопрос задан
  • 421 просмотр
Пригласить эксперта
Ответы на вопрос 2
@NIKROTOS
Начинающий программист.
Я не понимаю, как работает данный скрипт, но возможно, проблема в том, что ты путаешь экранные координаты и обычные. У кого-то была похожая проблема.
Ответ написан
Комментировать
combine1
@combine1
Нужно в любом случае указывать координату z
И проще будет сделать так:
container.transform.position = button.transform.position + (Vector3.up * 50)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы