Unity Scrollview наследует масштаб и сохраняет положение относительно родителя - PullRequest
0 голосов
/ 06 мая 2019

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

enter image description here Здесь вы можете увидеть мои настройки.

1. - это широкое изображение

2. - это баннер, который раньше был частью изображения, но теперь я хочу, чтобы он был отдельным gameObject.

Я не знаю, как я могу заставить баннер (2) наследоватьПоведение «полной карты» (1), прямо сейчас, когда я выбираю свободный аспект и изменяю размеры игрового вида, «полная карта» хорошо масштабируется, поэтому она всегда подходит сверху вниз.Чем более узкий экран, тем больше карта будет превышать вправо, и наоборот.

Однако проблема в том, что тогда banner (2) имеет прямоугольное преобразование, которое устанавливается с помощью x, yкоординаты относительно родителя, который масштабируется.Так как я изменяю размеры вокруг представления, баннер выходит из его предполагаемой позиции, и также не масштабируется с.Я пробовал много разных компонентов, но без удачи.Здесь, среди прочего, ограничение масштаба, масштабирование холста, ограничение позиции

enter image description here

Как вы можете видеть в этом GIF, баннер не уменьшается, как островстановится меньше, а также остается в том же положении горизонтально.

Какие-либо предложения о том, как заставить детей вести себя так, как будто они были частью карты?

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

enter image description here Я думаю, что вам нужно привязать изображения к центру мини-изображения острова, вы можете перетащить гизмо привязки из иерархии сцены.

Если вы видите это какfree aspect он глючит и его трудно обрабатывать, но если вы выберете разрешение, все будет гладко.

Это то, что вы хотите?

Изменить разрешение

enter image description here

0 голосов
/ 07 мая 2019

Удалено предыдущее, неправильно понял вопрос.

Предлагаемое решение:

Вы удаляете часть карты из пользовательского интерфейса и создаете ее как объект: Вы прикрепляете изображение карты как текстуру к (т.е.) самолет (см. видео здесь ).Вы добавляете «остров бесконечности» в качестве другой текстуры и размещаете его над изображением острова.После этого вы управляете камерой, чтобы увеличивать или уменьшать масштаб острова, а не бороться с масштабированием или перемещением пользовательского интерфейса.

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