Unity: как уменьшить масштаб камеры и поместить камеру между двумя объектами - PullRequest
0 голосов
/ 18 декабря 2018

с использованием Unity 2018.3 2D

У меня есть камера, использующая ортиграфическую проекцию, и мой размер по умолчанию составляет 6-8, но я хотел бы при нажатии кнопки уменьшить размер камеры, чтобы она находилась в пределах 2 объектов, первый объект должен быть полностью слева от экрана, а 2-й объект полностью справа.Размер камеры теперь будет около 20-30.

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

Как это сделать?Сначала я получу, какие 2 объекта будут слева и справа, затем вычислю расстояние Vector2, а затем получу номер размера камеры, чтобы оба объекта находились в пределах ??это один из способов сделать это?

Спасибо за помощь!

1 Ответ

0 голосов
/ 18 декабря 2018

Я предполагаю, что вы работаете в 2D.На мой взгляд, с помощью ортогональной карты, чтобы увеличить масштаб, вам просто нужно переместить камеру в центр объектов и настроить orthographicSize, например, так:

    centerPoint = (objectRight.transform.position - objectLeft.transform.position)/2;
    centerPoint.z  = -10;

    CameraSize = (objectRight.transform.position - objectLeft.transform.position).magnitude 
               -objectLeft.transform.localScale.x;

    Camera.main.transform.position = centerPoint;
    Camera.main.orthographicSize = CameraSize / 2;

Вы также можете использовать Lerp чтобы он был гладким

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