Положение вектора 3 на различном размере экрана - PullRequest
0 голосов
/ 25 января 2019

enter image description here

так что же происходит, когда я использую вектор 3 в своей игре, и я хочу, чтобы вектор 3 находился в определенной позиции для экрана разных размеров?это возможно?вот мои коды

 public virtual void ShuffleButton()
    {
       Vector3 buttonFirst = gameButtons[0].transform.position;
       buttonFirst.x += 297f;
       gameButtons[0].transform.position = buttonFirst;

       Vector3 buttonSecond = gameButtons[1].transform.position;
       buttonSecond.x -= 74.25f;
       gameButtons[1].transform.position = buttonSecond;

       Vector3 buttonThird = gameButtons[2].transform.position;
       buttonThird.x += 74.25f;
       gameButtons[2].transform.position = buttonThird;

       Vector3 buttonFourth = gameButtons[3].transform.position;
       buttonFourth.x -= 148.5f;
       gameButtons[3].transform.position = buttonFourth;

       Vector3 buttonFifth = gameButtons[4].transform.position;
       buttonFifth.x -= 148.5f;
       gameButtons[4].transform.position = buttonFifth;
    }

1 Ответ

0 голосов
/ 25 января 2019

Вы ищете функции преобразования позиции, такие как Camera.ScreenToWorldPoint().Их можно найти в документации по классу камеры Unity здесь: https://docs.unity3d.com/ScriptReference/Camera.html

Если, например, вы хотите разместить Sprite в верхнем левом углу, независимо от размера экрана, вы бы использовали экран илисмотровое пространство.Положение спрайта должно быть переведено из этого пространства экрана / области просмотра в мировое пространство.Вы можете использовать Camera.ScreenToWorldPoint() для этого.

Тем не менее, Unity использует три пространства просмотра: экран, мир и область просмотра.Вы должны прочитать все три, так как ваша проблема проистекает из того факта, что вы пытаетесь использовать мировые координаты (transform.position), чтобы установить положение элементов пользовательского интерфейса (которые используют экран или мировое пространство; это зависит от родителя).Настройки холста)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...