Добавлен Devion,
опубликован
Чем больше я наполняю cssGUI, чем дальше я лезу в дебри GUI Unity, тем больше я осознаю, насколько он тупо устроен.
И вдруг внезапным просветлением понимаю, что html и css - дают людям райский дизайн
Абсолютная неконтролируемость поведения в GUI не дает возможности его стандартизировать в полной мере.
Он конечно крут, имеет сто тысяч фишек. Но.
Эти фишки - бред. Как и сама парадигма GUI.
Вы только вникните в это - когда Unity рисует интерфейс через Layout он минимум дважды пробегает по одной и той же функции. Он выполняет ее, но функция то - линейна. А что это значит? Это значит что если нам понадобилось например определить фокус элемента "не там", или на втором прогоне количество элементов не совпадает - ошибки. Вот такая бредятина.
А часть команд и вовсе не работают как описано в документации. Например выставление минимального размера снимает с элемента растягивание в некоторых случаях. Тупо? Да.
А растягивание тоже самое - очень странно себя ведет. Самое плохое, что в некоторых случаях оно просто не работает.
Перехватывать нажатия - кошмар. Реализовать нормальный MouseMove - кошмар. Сделать процентный размер? Кошмар.
Кстати, перехват нажатия. Какой элемент "схавает его первым"? Правильно, который появился раньше. А какой элемент визуально ожидают? Который перед вами. А это не одно и тоже, ведь верхние элементы рисуются последними. А команды перехватывают те, что рисуются первыми.
И да - слои - не работают. Такие дела.
И вдруг внезапным просветлением понимаю, что html и css - дают людям райский дизайн
Абсолютная неконтролируемость поведения в GUI не дает возможности его стандартизировать в полной мере.
Он конечно крут, имеет сто тысяч фишек. Но.
Эти фишки - бред. Как и сама парадигма GUI.
Вы только вникните в это - когда Unity рисует интерфейс через Layout он минимум дважды пробегает по одной и той же функции. Он выполняет ее, но функция то - линейна. А что это значит? Это значит что если нам понадобилось например определить фокус элемента "не там", или на втором прогоне количество элементов не совпадает - ошибки. Вот такая бредятина.
А часть команд и вовсе не работают как описано в документации. Например выставление минимального размера снимает с элемента растягивание в некоторых случаях. Тупо? Да.
А растягивание тоже самое - очень странно себя ведет. Самое плохое, что в некоторых случаях оно просто не работает.
Перехватывать нажатия - кошмар. Реализовать нормальный MouseMove - кошмар. Сделать процентный размер? Кошмар.
Кстати, перехват нажатия. Какой элемент "схавает его первым"? Правильно, который появился раньше. А какой элемент визуально ожидают? Который перед вами. А это не одно и тоже, ведь верхние элементы рисуются последними. А команды перехватывают те, что рисуются первыми.
И да - слои - не работают. Такие дела.
И чувствуется мне - решение в переписывании разметки, целиком под стать реальному хтмл и ксс. Но есть ряд ситуаций, на которые я увы повлиять не могу.
Просто мысли вслух за то, в какой жопе находится все это дело.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Devion
RSQR, гуй то будет, никуда не денется. Но подход в юнити когда придумывали гуй выбрали откровенно дерьмовый и не продуманный. О чем и речь.
Да и подход хтмл/ксс я имею ввиду даже не саму эту парадигму аля "теги", а именно содержимое. А в ксс очень хорошо продуманы свойства. Не так как в юнити, где одних команд для ширины штук 5-10, и все могут дать похожий эффект. Команд для изменения цвета не меньше 20.
Отредактирован prog
Отредактирован Devion
Речь шла об отсутствии конкретики в гуи, четко выверенных команд, отображения объекта независимо от его позиции линейно и обработке действий. Я уверен, что ты понятия не имеешь о "прогонах" в юнити, которые как раз происходят из-за Layout, чем это плохо, но тем не менее сидишь и выпендриваешься за то какой Layout офигительный подход.
Отредактирован prog
P.S. меня всегда умиляло именование классов в юнити - они бы его еще TheLayout назвали, чтобы в принципе не возникало вопросов можно ли реализовать интерфейс другим способом.
Отредактирован alexprey