С этим кодом ничего, никуда не расползаеться, все четко стоит на местах под любым разрешением экрана, а так же сохраняються формы круглых и квалратных обьектов GUI (необходимо присвоить им тег).
Обьясняю суть кода: Обычно все работают в редакторе в режиме FreeAspect (но это не важно, применимо под любое разрешение), устанавливаете все параметры размеров и позиций обьектов GUI как обычно в инспекторе, в свойствах. Затем вешаете данный скрипт на каждый GUI обьект интерфейса. (ВАЖНО! - в делители переменных scrinBalansWidth и scrinBalansHeight пропишите реальные значения разрешения в котором настраивался GUI). Дальше скрипт будет сам устанавливать все позиции и размеры относительно ScrinResolution, четко сохраняя все обьекты на своих местах в любой точке экрана. Скрипт сначала записывает в свои переменные ваши настройки, затем пересчитывает все под текущее разрешение экрана и возвращает назад уже уточненые, сохраняя все соотношения и применяя новые размеры и позиции обьектов.
На все гуиТекстуреОбьекты, на которых нужно сохранять позицию и размер при смене разрешения экрана. Для гуиТекста немного другой код, хотя принцип такой же. X.cor.R (Prologue)
Затем вешаете данный скрипт на каждый GUI обьект интерфейса.
Можно-ли переделать скрипт так, чтобы он сам находил объекты по тегу? Чтобы не вешать скрипт 100500раз на каждый объект, а просто прописывать теги в свойствах объекта. Поиск | Правила | Новые сообщения
Найти то не проблема, только сомневаюсь что перебор и пересчет всего гуи не понизит производительность. Хотя в принципе это происходит только 1 раз, может так и будет лучше. Только уже сами пишите. База есть, но система получиться оч. сложная... X.cor.R (Prologue)
Обновил шапку, теперь методы работают в реал-тайм и сохраняет формы обьектов при необходимости. Добавил метод для GUIText, с подстраиванием размеров текста. X.cor.R (Prologue)
)) Первый скрипт выдает вот такую ошибку Assets/GUITextute.js(2,17): BCE0018: The name 'PlrInterface' does not denote a valid type ('not found'). Второй нормально, не понял по поводу тега, то есть я GUIText присваиваю любой тег и все?
Дополню-ка я: Создать скрипт C#, назвать его GUI2D. Назначить текстуру splashLogo Выставить Rect myRect Внимние:В Доступно только для пользователей выставить вместо 500 Ваше разрешение экрана PLAY, в котором Вы работаете.