Проблемите с дъщерното платно или динамичния потребителски интерфейс са разрешени
TonyMax 18 октомври 2016 г., 21:25 ч.
Ситуацията е следната: когато избера обект на игра, трябва да покажа елементите на неговия интерфейс на екрана. Например - избираме воин и неговите характеристики се показват на екрана. Обектите на играта се добавят към сцената динамично по преценка на играча, така че няма да работи да се коригира връзката между обекта на играта и елемента на интерфейса, преди да се добави самият този обект към сцената.
а) Най-елегантното решение, както ми се струва, беше следното: създадох платно за игрови обект в префаб с необходимите елементи и го включих, когато обектът за игра беше избран. Проблемът се оказа, че ако платното е дъщерен обект на сцената и позицията на неговия родител не е (0,0,0), тогава платното (когато екранното пространство - режимът на изобразяване на наслагване е включен) "изпълзява" извън екрана.
б) Второто решение е следното: окачвам всички елементи на интерфейса на обикновено платно без родител, комбинирам ги в логически групи, които определят връзката им с конкретен обект на игра. Прикрепям уникални етикети към тези групи и когато добавям обект на игра към сцената в start(), търся по етикет и едновременно с това получавам връзка към елемента на интерфейса, който ме интересува. Не искам да правя това, защото функцията за търсене по етикет или клас е много тежка, дори ако се използва веднъж при start()
Може би можете да ми кажете някаква друга опция или как да сменя 1-вата, така че всичко да се показва задоволително.
Re: Проблеми с дъщерно платно или динамичен потребителски интерфейс [Разрешени]
TonyMax 19 октомври 2016 г., 00:11 ч
Re: Проблеми с дъщерно платно или динамичен потребителски интерфейс [Разрешени]
неизмеримост 25 октомври 2016 г., 19:13 ч.
получаваме възможност бързо да променим интерфейса, без да преминаваме през всички модулиплатна
с вашата опция:
Кой е на конференцията в момента
Потребители, разглеждащи този форум: Yandex [Bot] и гости: 12
- Списък с форуми
- Техническа поддръжка • Нашият екип • Изтриване на бисквитки за конференции • Часова зона: UTC + 3 часа