SuperAPI AI 工具集

unity-ui

编程与开发

查看项目

更新于 10-16 01:37

技能介绍

用途:为 Unity 6 项目构建用户界面,包括菜单、HUD、按钮等 UI 元素,并帮助在 UI Toolkit、uGUI、IMGUI 三套框架间做选择。

主要能力:

  • 框架对比与决策:新运行时 UI 与编辑器窗口推荐 UI Toolkit;已有 uGUI 项目可继续使用并渐进迁移;IMGUI 仅用于编辑器工具与调试;世界空间 UI 可用 UI Toolkit 或 uGUI World Space Canvas。
  • UI Toolkit:以 UXML 定义结构、USS 定义外观、C# 定义行为;元素继承自 VisualElement,根节点为 rootVisualElement;支持类型/名称/类/后代/子代/伪类选择器,布局基于 Flexbox(默认 column);支持 SerializedObject 与运行时数据绑定、Manipulator 封装交互、[UxmlElement]/[UxmlAttribute] 自定义控件。
  • uGUI(旧版):基于 Canvas、RectTransform 与 EventSystem,含三种渲染模式与布局组件,通过 onClick、onValueChanged 等 UnityEvent 绑定逻辑。

使用方式:在 GameObject 上挂 UIDocument 并关联 .uxml 与 .uss;用 root.Q<Button>("play-button") 查询元素,RegisterCallback<ClickEvent> 注册事件,RegisterValueChangedCallback 监听值变化,OnDisable 中反注册;也可纯 C# 创建 UI。uGUI 需确保场景中存在 EventSystem。文本统一使用 TextMeshPro,而非旧版 UI.Text。

限制与注意:避免内联样式、复杂 USS 通配选择器、每帧重建 UI、忘记反注册回调、运行时使用 IMGUI 等反模式;uGUI 动态内容建议拆分 Canvas。具体版本兼容与性能数据暂未提供。