Unity uGUI проти UI Toolkit та Nova UI для імпорту з Figma

Вибір правильної архітектури інтерфейсу користувача в Unity значною мірою залежить від пайплайну рендерингу вашої гри, бюджету продуктивності та складності інтерфейсу. Figma Converter for Unity підтримує кілька фреймворків, дозволяючи конвертувати макети Figma в Unity uGUI Canvas, сучасний UI Toolkit або процедурний фреймворк Nova UI. Цей технічний огляд детально розбирає архітектурні особливості та матрицю сумісності на основі бенчмарків і специфікацій FigJam.

Аналіз архітектури та вибір UI-фреймворку

Unity uGUI Canvas залишається перевіреним стандартом індустрії для кросплатформних ігор. Глибока інтеграція з TextMeshPro та кастомними шейдерами, зрілі інструменти та надійне батчування викликів відмальовки роблять його вибором за замовчуванням для консольних та мобільних проєктів. У поєднанні з UniText та локалізованими сабсетами шрифтів uGUI забезпечує надійну підтримку багатьох мов.

Unity UI Toolkit надає запозичений із вебу рушій компонування Flexbox на базі Yoga. Відокремлюючи розмітку (UXML) від візуальних стилів (USS), він дозволяє усувати дублювання стилів та швидко змінювати вигляд елементів. У зв'язці з Figma to UI Toolkit Converter (com.da-assets.ftu) та UI Toolkit Linker & Binder (com.da-assets.ulb) команди можуть транслювати дизайн Figma у чисті ієрархії VisualElement з прив'язкою до коду.

Nova UI — це сучасний високопродуктивний фреймворк інтерфейсу, розроблений спеціально для розробників Unity, яким потрібні скруглені кути, процедурні тіні та автоматичні розміри без втрати частоти кадрів. FCU конвертує фрейми Figma безпосередньо в блоки Nova, зберігаючи відступи автолейаутів без деформацій.

Матриця сумісності компонентів та можливостей

Можливості фреймворкуUnity uGUI Canvas (за замовчуванням)UI Toolkit (com.da-assets.ftu)Nova UI (com.novaui)
Трансляція Figma Auto-LayoutГрупи Horizontal, Vertical та Grid LayoutРушій Yoga Flexbox через правила UXML та USSNova AutoLayout з відступами та авторозміром
Типографіка та сабсети шрифтівTextMeshPro та UniText із сабсетами CJK/LatinНативні сабсети FontAsset та TextCore TMPTextMeshPro та процедурні текстові блоки Nova
Реконструкція компонентівСтандартні префаби Unity та вкладені варіантиМодульні шаблони UXML та вкладені екземпляриІєрархії блоків Nova та префаби
Інтерактивні елементи UIButton, Toggle, ScrollView, InputField, SliderButton, Toggle, ScrollView, TextFieldNova Button, ScrollView, Grids та скролери
Рендеринг 9-Slice та тінейАвтоматичний 9-slice та Image OverflowНарізання рамок у USS та стилізація фонуПроцедурні скруглені кути, рамки та тіні
Архітектура зв'язування данихПряма серіалізація скриптів та D.A. LocalizatorТипобезпечне зв'язування через UI Toolkit Linker & BinderПряме компонентне зв'язування Nova

Інженерні рекомендації та найкращі практики

Для команд, які починають розробку гри в Unity 2022.3 LTS або Unity 6, важливо враховувати цільове залізо та досвід команди. Якщо гра покладається на складні шейдери канвасу, інтерфейс у 3D-просторі чи численні плагіни з Asset Store, uGUI Canvas залишається найнадійнішим вибором. Для інструментів редактора чи десктопних застосунків чудово підходить UI Toolkit з FTU та ULB. Для мобільних або XR-ігор із процедурними скругленнями кутів та тінями без зайвих текстурних атласів Nova UI є чудовою сучасною альтернативою.