Как разбить семью или проблема детей и их родителей
|
|
Cmaujluk | Дата: Воскресенье, 04 Октября 2015, 09:18 | Сообщение # 1 |
участник
Сейчас нет на сайте
| Всем привет!) Не мог назвать тему по другому так как она выражает всю суть.
Если объект (например куб) находится в свободном плаванье (в иерархии) то нормально отображается в камере. Но если его закинуть в дочерние к другому объекту (в моем случаи панели которая сама находится в канвасе), то объект начинает кататься в камере при изменении размера окна, есть какие нибудь пути объяснить объекту чтобы он перестал катался вместе с родителями? Была идея создать свободный объект и в апдейте все время переназначать координаты, но это не подходит, ибо это "тяжело". Выслушаю любые, даже самые бредовые идеи, заранее спасибо. С меня как всегда +.
Не жадный на плюсы. Наши проекты: Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft Angry Bee Evolution - Эволюция с элементами кликера Чего не хватает? - Викторина на логику"
|
|
| |
Ranger | Дата: Воскресенье, 04 Октября 2015, 13:05 | Сообщение # 2 |
почти ветеран
Сейчас нет на сайте
| recttransform ui компоненотов != transform в мире при настройке канваса screenspace 2 выхода: 1. руками (в скрипте я имею в виду) подгонять transform куба под экран 2. пользовать worldspace в канвасе
Сообщение отредактировал Ranger - Воскресенье, 04 Октября 2015, 13:06 |
|
| |
nedash | Дата: Воскресенье, 04 Октября 2015, 13:14 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| Ну, как бы все правильно. Все дочерние элементы получают свойства родительского. Припустим Вы зделали всплывающее меню, в нем 2 кнопки. И представте: у Вас само меню выкатывается, а кнопки нет . По подробней объясните суть что Вам надо зделать (может Вам надо получать свойства одного объекта и запихнуть в другой).
Кто из Вас котейки, подымите лапку?
|
|
| |
|
Ranger | Дата: Воскресенье, 04 Октября 2015, 17:34 | Сообщение # 5 |
почти ветеран
Сейчас нет на сайте
| Цитата beril ( ) Эм, а зачем вообще игровой обьект делать дочерним к элементам интерфейса? наверное хочет, чтобы кубик терся о кубик внутри интерфейсного окна
|
|
| |
Cmaujluk | Дата: Понедельник, 05 Октября 2015, 04:54 | Сообщение # 6 |
участник
Сейчас нет на сайте
| Пилю все дело под Android. Цитата Ranger ( ) 1. руками (в скрипте я имею в виду) подгонять transform куба под экран Пробовал, выверял формулы с константами с точностью до 0.0001, если в телефоне вытащить нижнюю панель(на некоторых тлф) то куб уезжает.
Цитата Ranger ( ) пользовать worldspace в канвасе Сам канвас начинает багать, и не все элементы корректно отображаются.
Цитата nedash ( ) По подробней объясните суть что Вам надо зделать Цитата nedash ( ) Эм, а зачем вообще игровой обьект делать дочерним к элементам интерфейса?
У меня есть N кнопок которые инициализируются экземпляром класса, у каждой кнопки есть гетсеты имени, цвета и т.д. В том числе каждой кнопке назначен свой игровой объект который она включает если активирована, и выключает если выбрана другая кнопка. Т.е. это что-то типа меню, но кнопки не исчезают, а включают тот объект который им назначен. В моем случае это UI кнопка и у неё в дочерних находится куб Т.е. когда я нажимаю кнопку меню, появляется ещё 1 кнопка с дочерним кубом, нажму другую кнопку появится что-то другое, а кнопка и дочерний куб на время задизейблятся, дочерние объекты используются для того, чтобы легко управлять SetActive передавая всего лишь 1 аргумент в метод кнопки меню(саму кнопку с дочерними ему объектами).
Спасибо за ответы, но решения пока не нашел и помощь ещё требуется.
Не жадный на плюсы. Наши проекты: Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft Angry Bee Evolution - Эволюция с элементами кликера Чего не хватает? - Викторина на логику"
|
|
| |
Ranger | Дата: Понедельник, 05 Октября 2015, 05:30 | Сообщение # 7 |
почти ветеран
Сейчас нет на сайте
| ну а зачем кубы к кнопкам чилдами-то делать?? Так нравится мучиться с преобразованиями? в скрипте кнопы пропиши публичный геймобжект закинь туда твои кубы через инспектор и к нему обращайся
пысы Цитата Cmaujluk ( ) Пробовал, выверял формулы с константами с точностью до 0.0001, если в телефоне вытащить нижнюю панель(на некоторых тлф) то куб уезжает. если правильно сделать(а не подгонять константы), ничего и никуда не уезжает
|
|
| |
Cmaujluk | Дата: Понедельник, 05 Октября 2015, 11:32 | Сообщение # 8 |
участник
Сейчас нет на сайте
| Цитата Ranger ( ) ну а зачем кубы к кнопкам чилдами-то делать?? Для удобства переключения вкладок (кнопок меню) чтобы передавать всего лишь 1 аргумент, а дочерних может быть миллион хоть куб, хоть камера, да без разницы что, я это расписывал.
Цитата Ranger ( ) закинь туда твои кубы через инспектор Это можно сделать и через инспектор и через код кэшом, но мне это не надо, если у меня объектов миллион? С разными тегами и названиями? Тут даже foreach'ем не цепануть их, и не задизейблить. Писать метод на миллион строк и миллион объектов закидывать через инспектор? Цитата Ranger ( ) если правильно сделать(а не подгонять константы), ничего и никуда не уезжает Код MainCube_Transform.position = new Vector3(0-Screen.width/1.5852f, 0 - Screen.height / 2.2731f, 0); Тем самым подгоняя куб в нужную точку камеры. Есть другие варианты?
Не жадный на плюсы. Наши проекты: Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft Angry Bee Evolution - Эволюция с элементами кликера Чего не хватает? - Викторина на логику"
|
|
| |
Ranger | Дата: Понедельник, 05 Октября 2015, 12:29 | Сообщение # 9 |
почти ветеран
Сейчас нет на сайте
| Цитата Cmaujluk ( ) Тем самым подгоняя куб в нужную точку камеры.
Нельзя вот так из экранных координат преобразовать в мировые. http://docs.unity3d.com/ScriptReference/Camera.ScreenToWorldPoint.html
|
|
| |
Cmaujluk | Дата: Понедельник, 05 Октября 2015, 13:27 | Сообщение # 10 |
участник
Сейчас нет на сайте
| Цитата Ranger ( ) http://docs.unity3d.com/ScriptReference/Camera.ScreenToWorldPoint.html Таким способом все равно не возможно подогнать, при небольшом уменьшении экрана объект уезжает, специально затестил. Максимум что можно выжать это в апдейте чекать, но это "тяжело".
Что сказать. Я отчаялся. Придется передавать не один объект а массив объектов как аргумент, или пилить второй необязательный аргумент. В любом случаи спасибо всем кто отписался, прошу прощения за кипишь.
Не жадный на плюсы. Наши проекты: Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft Angry Bee Evolution - Эволюция с элементами кликера Чего не хватает? - Викторина на логику"
|
|
| |