Есть проблемы с изменением разрешения в Unity - PullRequest
1 голос
/ 17 октября 2019

Я делаю игру в Unity и не могу получить ожидаемые результаты при изменении разрешения в игре. Мне нужна функция изменения разрешения через игровое меню, а не встроенная функция Unity.

Само изменение разрешения было простым:

Screen.SetResolution(1024, 768, FullScreenVar);

FullScreenVar может быть истинным или ложным в зависимости от того, если яхочу полноэкранный режим.

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

Вариант 1: игра оконная.

В этом случае я хочу игруокно должно быть точного размера, что мне нужно. Мол, если я хочу 1024x768, то окно будет такого размера. Тем не менее, окно обычно больше, и есть фактический контент, окруженный синей рамкой.

enter image description here

После некоторого поиска в Google, я также попытался изменитьсоотношение сторон, но оно не вносило особых изменений. Я также попытался поиграть с настройками в самом Unity, но получил еще более странные результаты: как на игровом экране была только часть контента, как будто все было перемещено вниз, вправо или что-то в этом роде.

Итак,вопрос 1: что я должен сделать, чтобы окно игры было «чистым» без каких-либо границ вокруг контента?

Вариант 2: игра в полноэкранном режиме.

В этом случае желаемый вывод - это полноэкранный режим со всем измененным размером содержимого. Таким образом, если игрок выбирает упомянутые 1024x768, а его разрешение на рабочем столе составляет 1600x900, игровой контент должен быть растянут до нового размера.

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

Вопрос 2: как в полноэкранном режиме как растянуть все изображения на весь экран, если выбранное разрешение меньше?

Третий вопрос также касается разрешений,но немного отличается. В самом Unity я работаю с размером экрана по умолчанию 1600x900. Однако один игрок пожаловался, что он установил 1920x1080 (выше), и это привело к тому, что игровые кнопки были неуместны \ изменены. Я не видел этого, поэтому не могу сказать ничего конкретного, но он сказал, что для того, чтобы что-то изменить на экране настроек, он должен нажимать не на сами кнопки, а где-то поблизости.

Вопрос 3: Правильно ли я понял, что это произошло потому, что фактическое разрешение выше, чем размер экрана по умолчанию в самом Unity? И если да, то как это можно исправить?


Как организована моя игра.

В ней используется только одна основная сцена. Сцена имеет камеру и основной игровой объект с именем «areaContainer», который включает в себя вспомогательные игровые объекты, которые служат игровыми областями. Некоторые из них имеют размер 1600x900, а некоторые - 1508x700, поскольку они также имеют пользовательский интерфейс.

enter image description here

Как я понимаю, камера показывает areaContainer. Вот их свойства.

enter image description here


Что я пробовал:

1) Игра сСвойства areaContainer, в частности с Canvas Scaler и режимом рендеринга, но ничего из того, что я пытался установить, не дало желаемого результата. 2) Изменение соотношения сторон в самом коде.

Все, что я пробовал, дало только более странные результаты: например, изображения были неуместны, как перемещение в сторону и вверх \ вниз.

Пожалуйста, помогите мне с этимивыпуски.

Спасибо всем заранее, Евгений

...